# Test for log messages emitted by VACUUM and ANALYZE when a specified
# relation is concurrently dropped.
#
# This also verifies that log messages are not emitted for concurrently
# dropped relations that were not specified in the VACUUM or ANALYZE
# command.

setup
{
	CREATE TABLE stats (a INT);
    INSERT INTO stats SELECT generate_series(1, 10);
}

teardown
{
	DROP TABLE IF EXISTS stats;
}

session s1
step s1_query
{
	START TRANSACTION ISOLATION LEVEL REPEATABLE READ;
    SELECT count(*) FROM pg_attribute;
}
step s1_commit
{
    COMMIT;
}

session s2
step s2_update { UPDATE stats SET a=1 WHERE a > 6; } 
step s2_vac_full		{ VACUUM FULL stats; }
step s2_reltuples  { SELECT reltuples FROM pg_class WHERE relname = 'stats'; }
step s2_create_index { CREATE INDEX ON stats (a); }

permutation s2_vac_full s2_reltuples s1_query s2_update s2_reltuples s2_vac_full s1_commit s2_reltuples
permutation s2_create_index s2_vac_full s2_reltuples s1_query s2_update s2_reltuples s2_vac_full s1_commit s2_reltuples
