Remove reindex_catalog test from test schedules.
authorAndres Freund <andres@anarazel.de>
Mon, 6 May 2019 06:31:58 +0000 (23:31 -0700)
committerAndres Freund <andres@anarazel.de>
Fri, 10 May 2019 19:44:31 +0000 (12:44 -0700)
As none of the approaches for avoiding the deadlock issues seem
promising enough, and all the expected reindex related changes have
been made, apply 60c2951e1bab7e to master as well.

Discussion: https://postgr.es/m/4622.1556982247@sss.pgh.pa.us

src/test/regress/expected/reindex_catalog.out
src/test/regress/parallel_schedule
src/test/regress/serial_schedule
src/test/regress/sql/reindex_catalog.sql

index 142616fccbbb4ece901108d7c5bda6e168f43648..4b5fba4949391053276fabcebc4c28cb9a847238 100644 (file)
@@ -1,8 +1,8 @@
 --
 -- Check that system tables can be reindexed.
 --
--- Note that this test currently has to run without parallel tests
--- being scheduled, as currently reindex catalog tables can cause
+-- Note that this test currently is not included in the default
+-- schedules, as currently reindexing catalog tables can cause
 -- deadlocks:
 --
 -- * The lock upgrade between the ShareLock acquired for the reindex
 --   tables are routinely released before commit - therefore the lock
 --   held for reindexing doesn't guarantee that no running transaction
 --   performed modifications in the table underlying the index.
+--
+--   This is particularly problematic as such conflicts can be
+--   triggered even when run in isolation, as a previous session's
+--   temporary table cleanup might still be running (even when the
+--   session ended from a client perspective).
 -- Check reindexing of whole tables
 REINDEX TABLE pg_class; -- mapped, non-shared, critical
 REINDEX TABLE pg_index; -- non-mapped, non-shared, critical
index 312b7c22c505d7fee2495e6c8b5ad3597c171588..f23fe8d870eacb86b919932a51f01640a3e762f8 100644 (file)
@@ -52,11 +52,6 @@ test: create_misc create_operator create_procedure
 # These depend on create_misc and create_operator
 test: create_index create_index_spgist create_view index_including index_including_gist
 
-# ----------
-# Has to run in isolation, due to deadlock risk
-# ----------
-test: reindex_catalog
-
 # ----------
 # Another group of parallel tests
 # ----------
index 9d44c31329823c430276ac12fadd05606fa80902..ca200eb5997957585515c003371fae91d02a2a3c 100644 (file)
@@ -66,7 +66,6 @@ test: create_index_spgist
 test: create_view
 test: index_including
 test: index_including_gist
-test: reindex_catalog
 test: create_aggregate
 test: create_function_3
 test: create_cast
index 2180ee5791acaca1bde2f19a9fc54ead6c3a64e2..87ecf52244f1ee06e2fc4e59c00b4131fb1a109f 100644 (file)
@@ -1,8 +1,8 @@
 --
 -- Check that system tables can be reindexed.
 --
--- Note that this test currently has to run without parallel tests
--- being scheduled, as currently reindex catalog tables can cause
+-- Note that this test currently is not included in the default
+-- schedules, as currently reindexing catalog tables can cause
 -- deadlocks:
 --
 -- * The lock upgrade between the ShareLock acquired for the reindex
 --   tables are routinely released before commit - therefore the lock
 --   held for reindexing doesn't guarantee that no running transaction
 --   performed modifications in the table underlying the index.
+--
+--   This is particularly problematic as such conflicts can be
+--   triggered even when run in isolation, as a previous session's
+--   temporary table cleanup might still be running (even when the
+--   session ended from a client perspective).
 
 
 -- Check reindexing of whole tables