version 1.0.5.

- Disable autovacuum for working tables and update logs.
- Do ANALYZE automatically after reorg unless -Z, --no-analyze option
  is specified.
This commit is contained in:
Takahiro Itagaki
2009-05-25 07:06:38 +00:00
parent 9a8f2e9c33
commit 5fe3f037be
9 changed files with 232 additions and 101 deletions

View File

@ -11,6 +11,10 @@ BEGIN;
CREATE SCHEMA reorg;
CREATE FUNCTION reorg.version() RETURNS text AS
'MODULE_PATHNAME', 'reorg_version'
LANGUAGE 'C' IMMUTABLE STRICT;
CREATE AGGREGATE reorg.array_accum (
sfunc = array_append,
basetype = anyelement,
@ -142,6 +146,17 @@ CREATE FUNCTION reorg.reorg_trigger() RETURNS trigger AS
'MODULE_PATHNAME', 'reorg_trigger'
LANGUAGE 'C' VOLATILE STRICT SECURITY DEFINER;
CREATE FUNCTION reorg.conflicted_triggers(oid) RETURNS SETOF name AS
$$
SELECT tgname FROM pg_trigger
WHERE tgrelid = $1 AND tgname >= 'z_reorg_trigger'
$$
LANGUAGE sql STABLE STRICT;
CREATE FUNCTION reorg.disable_autovacuum(regclass) RETURNS void AS
'MODULE_PATHNAME', 'reorg_disable_autovacuum'
LANGUAGE 'C' VOLATILE STRICT;
CREATE FUNCTION reorg.reorg_apply(
sql_peek cstring,
sql_insert cstring,