mirror of
https://github.com/postgres/postgres.git
synced 2025-05-11 05:41:32 +03:00
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
This commit is contained in:
parent
6ea364e7e7
commit
baa32ce28b
@ -5,9 +5,7 @@ SET max_parallel_workers = 0;
|
|||||||
-- key aborts. One easy way to achieve that is to use uuids that all
|
-- 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
|
-- have the same prefix, as abbreviated keys for uuids just use the
|
||||||
-- first sizeof(Datum) bytes.
|
-- first sizeof(Datum) bytes.
|
||||||
DROP TABLE IF EXISTS abbrev_abort_uuids;
|
CREATE TEMP TABLE abbrev_abort_uuids (
|
||||||
NOTICE: table "abbrev_abort_uuids" does not exist, skipping
|
|
||||||
CREATE TABLE abbrev_abort_uuids (
|
|
||||||
id serial not null,
|
id serial not null,
|
||||||
abort_increasing uuid,
|
abort_increasing uuid,
|
||||||
abort_decreasing uuid,
|
abort_decreasing uuid,
|
||||||
@ -596,7 +594,7 @@ ROLLBACK;
|
|||||||
----
|
----
|
||||||
-- test tuplesort mark/restore
|
-- 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
|
-- need a few duplicates for mark/restore to matter
|
||||||
INSERT INTO test_mark_restore(col1, col2, col12)
|
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);
|
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)
|
(10 rows)
|
||||||
|
|
||||||
COMMIT;
|
COMMIT;
|
||||||
-- cleanup
|
|
||||||
DROP TABLE IF EXISTS abbrev_abort_uuids;
|
|
||||||
DROP TABLE IF EXISTS test_mark_restore;
|
|
||||||
|
@ -6,9 +6,7 @@ SET max_parallel_workers = 0;
|
|||||||
-- key aborts. One easy way to achieve that is to use uuids that all
|
-- 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
|
-- have the same prefix, as abbreviated keys for uuids just use the
|
||||||
-- first sizeof(Datum) bytes.
|
-- first sizeof(Datum) bytes.
|
||||||
DROP TABLE IF EXISTS abbrev_abort_uuids;
|
CREATE TEMP TABLE abbrev_abort_uuids (
|
||||||
|
|
||||||
CREATE TABLE abbrev_abort_uuids (
|
|
||||||
id serial not null,
|
id serial not null,
|
||||||
abort_increasing uuid,
|
abort_increasing uuid,
|
||||||
abort_decreasing uuid,
|
abort_decreasing uuid,
|
||||||
@ -266,7 +264,7 @@ ROLLBACK;
|
|||||||
-- test tuplesort mark/restore
|
-- 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
|
-- need a few duplicates for mark/restore to matter
|
||||||
INSERT INTO test_mark_restore(col1, col2, col12)
|
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);
|
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;
|
:qry;
|
||||||
|
|
||||||
COMMIT;
|
COMMIT;
|
||||||
|
|
||||||
|
|
||||||
-- cleanup
|
|
||||||
DROP TABLE IF EXISTS abbrev_abort_uuids;
|
|
||||||
DROP TABLE IF EXISTS test_mark_restore;
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user