postgrespro.git / summary / log / commit / refs

commit    baa32ce28b39eccdf384e979dac5ad8be91ff44e
Author:   Tom Lane <tgl@sss.pgh.pa.us>
Date:     Sat Dec 14 20:01:56 2019 +0000

    Try to stabilize results of new tuplesort regression test.
    
    It appears that a concurrent autovacuum/autoanalyze run can cause
    changes in the plans expected by this test.  To prevent that, change
    the tables it uses to be temp tables --- there's no need for them
    to be permanent, and this should save a few cycles too.
    
    Discussion: https://postgr.es/m/3244.1576160824@sss.pgh.pa.us


src/test/regress/expected/tuplesort.out | 9 ++------- src/test/regress/sql/tuplesort.sql | 11 ++--------- 2 files changed, 4 insertions(+), 16 deletions(-) diff --git a/src/test/regress/expected/tuplesort.out b/src/test/regress/expected/tuplesort.out index 0a2fef95ce..3fc1998bf2 100644 --- a/src/test/regress/expected/tuplesort.out +++ b/src/test/regress/expected/tuplesort.out @@ -5,9 +5,7 @@ SET max_parallel_workers = 0; -- key aborts. One easy way to achieve that is to use uuids that all -- have the same prefix, as abbreviated keys for uuids just use the -- first sizeof(Datum) bytes. -DROP TABLE IF EXISTS abbrev_abort_uuids; -NOTICE: table "abbrev_abort_uuids" does not exist, skipping -CREATE TABLE abbrev_abort_uuids ( +CREATE TEMP TABLE abbrev_abort_uuids ( id serial not null, abort_increasing uuid, abort_decreasing uuid, @@ -596,7 +594,7 @@ ROLLBACK; ---- -- test tuplesort mark/restore --- -CREATE TABLE test_mark_restore(col1 int, col2 int, col12 int); +CREATE TEMP TABLE test_mark_restore(col1 int, col2 int, col12 int); -- need a few duplicates for mark/restore to matter INSERT INTO test_mark_restore(col1, col2, col12) SELECT a.i, b.i, a.i * b.i FROM generate_series(1, 500) a(i), generate_series(1, 5) b(i); @@ -686,6 +684,3 @@ EXPLAIN (COSTS OFF) :qry; (10 rows) COMMIT; --- cleanup -DROP TABLE IF EXISTS abbrev_abort_uuids; -DROP TABLE IF EXISTS test_mark_restore; diff --git a/src/test/regress/sql/tuplesort.sql b/src/test/regress/sql/tuplesort.sql index 6b91014a6b..7d7e02f02a 100644 --- a/src/test/regress/sql/tuplesort.sql +++ b/src/test/regress/sql/tuplesort.sql @@ -6,9 +6,7 @@ SET max_parallel_workers = 0; -- key aborts. One easy way to achieve that is to use uuids that all -- have the same prefix, as abbreviated keys for uuids just use the -- first sizeof(Datum) bytes. -DROP TABLE IF EXISTS abbrev_abort_uuids; - -CREATE TABLE abbrev_abort_uuids ( +CREATE TEMP TABLE abbrev_abort_uuids ( id serial not null, abort_increasing uuid, abort_decreasing uuid, @@ -266,7 +264,7 @@ ROLLBACK; -- test tuplesort mark/restore --- -CREATE TABLE test_mark_restore(col1 int, col2 int, col12 int); +CREATE TEMP TABLE test_mark_restore(col1 int, col2 int, col12 int); -- need a few duplicates for mark/restore to matter INSERT INTO test_mark_restore(col1, col2, col12) SELECT a.i, b.i, a.i * b.i FROM generate_series(1, 500) a(i), generate_series(1, 5) b(i); @@ -298,8 +296,3 @@ EXPLAIN (COSTS OFF) :qry; :qry; COMMIT; - - --- cleanup -DROP TABLE IF EXISTS abbrev_abort_uuids; -DROP TABLE IF EXISTS test_mark_restore; [parent: 6ea364e7e7d5]