Слияние кода завершено, страница обновится автоматически
--
-- SYSCONF
--
CREATE OR REPLACE FUNCTION
pgsysconf(OUT os_page_size bigint,
OUT os_pages_free bigint,
OUT os_total_pages bigint)
RETURNS record
AS '$libdir/pgfincore'
LANGUAGE C;
COMMENT ON FUNCTION pgsysconf()
IS 'Get system configuration information at run time:
- os_page_size is _SC_PAGESIZE
- os_pages_free is _SC_AVPHYS_PAGES
- os_total_pages is _SC_PHYS_PAGES
man 3 sysconf for details';
CREATE OR REPLACE FUNCTION
pgsysconf_pretty(OUT os_page_size text,
OUT os_pages_free text,
OUT os_total_pages text)
RETURNS record
AS '
select pg_size_pretty(os_page_size) as os_page_size,
pg_size_pretty(os_pages_free * os_page_size) as os_pages_free,
pg_size_pretty(os_total_pages * os_page_size) as os_total_pages
from pgsysconf()'
LANGUAGE SQL;
COMMENT ON FUNCTION pgsysconf_pretty()
IS 'Pgsysconf() with human readable output';
--
-- PGFADVISE
--
CREATE OR REPLACE FUNCTION
pgfadvise(IN regclass, IN text, IN int,
OUT relpath text,
OUT os_page_size bigint,
OUT rel_os_pages bigint,
OUT os_pages_free bigint)
RETURNS setof record
AS '$libdir/pgfincore'
LANGUAGE C;
COMMENT ON FUNCTION pgfadvise(regclass, text, int)
IS 'Predeclare an access pattern for file data';
CREATE OR REPLACE FUNCTION
pgfadvise_willneed(IN regclass,
OUT relpath text,
OUT os_page_size bigint,
OUT rel_os_pages bigint,
OUT os_pages_free bigint)
RETURNS setof record
AS 'SELECT pgfadvise($1, ''main'', 10)'
LANGUAGE SQL;
CREATE OR REPLACE FUNCTION
pgfadvise_dontneed(IN regclass,
OUT relpath text,
OUT os_page_size bigint,
OUT rel_os_pages bigint,
OUT os_pages_free bigint)
RETURNS setof record
AS 'SELECT pgfadvise($1, ''main'', 20)'
LANGUAGE SQL;
CREATE OR REPLACE FUNCTION
pgfadvise_normal(IN regclass,
OUT relpath text,
OUT os_page_size bigint,
OUT rel_os_pages bigint,
OUT os_pages_free bigint)
RETURNS setof record
AS 'SELECT pgfadvise($1, ''main'', 30)'
LANGUAGE SQL;
CREATE OR REPLACE FUNCTION
pgfadvise_sequential(IN regclass,
OUT relpath text,
OUT os_page_size bigint,
OUT rel_os_pages bigint,
OUT os_pages_free bigint)
RETURNS setof record
AS 'SELECT pgfadvise($1, ''main'', 40)'
LANGUAGE SQL;
CREATE OR REPLACE FUNCTION
pgfadvise_random(IN regclass,
OUT relpath text,
OUT os_page_size bigint,
OUT rel_os_pages bigint,
OUT os_pages_free bigint)
RETURNS setof record
AS 'SELECT pgfadvise($1, ''main'', 50)'
LANGUAGE SQL;
--
-- PGFADVISE_LOADER
--
CREATE OR REPLACE FUNCTION
pgfadvise_loader(IN regclass, IN text, IN int, IN bool, IN bool, IN varbit,
OUT relpath text,
OUT os_page_size bigint,
OUT os_pages_free bigint,
OUT pages_loaded bigint,
OUT pages_unloaded bigint)
RETURNS setof record
AS '$libdir/pgfincore'
LANGUAGE C;
COMMENT ON FUNCTION pgfadvise_loader(regclass, text, int, bool, bool, varbit)
IS 'Restore cache from the snapshot, options to load/unload each block to/from cache';
CREATE OR REPLACE FUNCTION
pgfadvise_loader(IN regclass, IN int, IN bool, IN bool, IN varbit,
OUT relpath text,
OUT os_page_size bigint,
OUT os_pages_free bigint,
OUT pages_loaded bigint,
OUT pages_unloaded bigint)
RETURNS setof record
AS 'SELECT pgfadvise_loader($1, ''main'', $2, $3, $4, $5)'
LANGUAGE SQL;
--
-- PGFINCORE
--
CREATE OR REPLACE FUNCTION
pgfincore(IN regclass, IN text, IN bool,
OUT relpath text,
OUT segment int,
OUT os_page_size bigint,
OUT rel_os_pages bigint,
OUT pages_mem bigint,
OUT group_mem bigint,
OUT os_pages_free bigint,
OUT databit varbit,
OUT pages_dirty bigint,
OUT group_dirty bigint)
RETURNS setof record
AS '$libdir/pgfincore'
LANGUAGE C;
COMMENT ON FUNCTION pgfincore(regclass, text, bool)
IS 'Utility to inspect and get a snapshot of the system cache';
CREATE OR REPLACE FUNCTION
pgfincore(IN regclass, IN bool,
OUT relpath text,
OUT segment int,
OUT os_page_size bigint,
OUT rel_os_pages bigint,
OUT pages_mem bigint,
OUT group_mem bigint,
OUT os_pages_free bigint,
OUT databit varbit,
OUT pages_dirty bigint,
OUT group_dirty bigint)
RETURNS setof record
AS 'SELECT * from pgfincore($1, ''main'', $2)'
LANGUAGE SQL;
CREATE OR REPLACE FUNCTION
pgfincore(IN regclass,
OUT relpath text,
OUT segment int,
OUT os_page_size bigint,
OUT rel_os_pages bigint,
OUT pages_mem bigint,
OUT group_mem bigint,
OUT os_pages_free bigint,
OUT databit varbit,
OUT pages_dirty bigint,
OUT group_dirty bigint)
RETURNS setof record
AS 'SELECT * from pgfincore($1, ''main'', false)'
LANGUAGE SQL;
CREATE OR REPLACE FUNCTION
pgfincore_drawer(IN varbit,
OUT drawer cstring)
RETURNS cstring
AS '$libdir/pgfincore'
LANGUAGE C;
COMMENT ON FUNCTION pgfincore_drawer(varbit)
IS 'A naive drawing function to visualize page cache per object';
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )