Flesh out all test cases

pull/1013/head
Jason Petersen 2016-12-13 11:06:00 -07:00
parent bcfedac399
commit e80d7f5741
No known key found for this signature in database
GPG Key ID: 9F1D3510D110ABA9
2 changed files with 57 additions and 7 deletions

View File

@ -86,7 +86,7 @@ SELECT master_create_worker_shards('dustbunnies', 1, 2);
-- run VACUUM and ANALYZE against the table on the master
VACUUM dustbunnies;
ANALYZE dustbunnies;
-- update statistics, then verify that the four dead rows are gone
-- verify that the VACUUM and ANALYZE ran
\c - - - :worker_1_port
SELECT pg_sleep(.500);
pg_sleep
@ -106,3 +106,35 @@ SELECT pg_stat_get_analyze_count('dustbunnies_990002'::regclass);
1
(1 row)
-- disable auto-VACUUM for next test
ALTER TABLE dustbunnies_990002 SET (autovacuum_enabled = false);
SELECT relfrozenxid AS frozenxid FROM pg_class WHERE oid='dustbunnies_990002'::regclass
\gset
-- send a VACUUM FREEZE after adding a new row
\c - - - :master_port
INSERT INTO dustbunnies VALUES (5, 'peter');
VACUUM (FREEZE) dustbunnies;
-- verify that relfrozenxid increased
\c - - - :worker_1_port
SELECT relfrozenxid::text::integer > :frozenxid AS frozen_performed FROM pg_class
WHERE oid='dustbunnies_990002'::regclass;
frozen_performed
------------------
t
(1 row)
-- get file node to verify VACUUM FULL
SELECT relfilenode AS oldnode FROM pg_class WHERE oid='dustbunnies_990002'::regclass
\gset
-- send a VACUUM FULL
\c - - - :master_port
VACUUM (FULL) dustbunnies;
-- verify that relfrozenxid increased
\c - - - :worker_1_port
SELECT relfilenode != :oldnode AS table_rewritten FROM pg_class
WHERE oid='dustbunnies_990002'::regclass;
table_rewritten
-----------------
t
(1 row)

View File

@ -60,18 +60,36 @@ SELECT master_create_worker_shards('dustbunnies', 1, 2);
VACUUM dustbunnies;
ANALYZE dustbunnies;
-- update statistics, then verify that the four dead rows are gone
-- verify that the VACUUM and ANALYZE ran
\c - - - :worker_1_port
SELECT pg_sleep(.500);
SELECT pg_stat_get_vacuum_count('dustbunnies_990002'::regclass);
SELECT pg_stat_get_analyze_count('dustbunnies_990002'::regclass);
-- disable auto-VACUUM for next test
ALTER TABLE dustbunnies_990002 SET (autovacuum_enabled = false);
SELECT relfrozenxid AS frozenxid FROM pg_class WHERE oid='dustbunnies_990002'::regclass
\gset
-- try a mixed VACUUM ANALYZE
-- send a VACUUM FREEZE after adding a new row
\c - - - :master_port
VACUUM (FULL, ANALYZE) dustbunnies;
INSERT INTO dustbunnies VALUES (5, 'peter');
VACUUM (FREEZE) dustbunnies;
-- update statistics, then verify that the four dead rows are gone
-- verify that relfrozenxid increased
\c - - - :worker_1_port
SELECT pg_sleep(.500);
SELECT * FROM pg_stat_all_tables WHERE relid = 'dustbunnies_990002'::regclass;
SELECT relfrozenxid::text::integer > :frozenxid AS frozen_performed FROM pg_class
WHERE oid='dustbunnies_990002'::regclass;
-- get file node to verify VACUUM FULL
SELECT relfilenode AS oldnode FROM pg_class WHERE oid='dustbunnies_990002'::regclass
\gset
-- send a VACUUM FULL
\c - - - :master_port
VACUUM (FULL) dustbunnies;
-- verify that relfrozenxid increased
\c - - - :worker_1_port
SELECT relfilenode != :oldnode AS table_rewritten FROM pg_class
WHERE oid='dustbunnies_990002'::regclass;