Skip to content

Commit 60c2951

Browse files
committed
Remove reindex_catalog test from test schedules.
As the test currently causes occasional deadlocks (due to the schema cleanup from previous sessions potentially still running), and the patch from f912d7d has gotten a fair bit of buildfarm coverage, remove the test from the test schedules. There's a set of minor releases coming up. Leave the tests in place, so it can manually be run using EXTRA_TESTS. For now also leave it in master, as there's no imminent release, and there's plenty (re-)index related work in 12. But we'll have to disable it before long there too, unless somebody comes up with simple enough fixes for the deadlock (I'm about to post a vague idea to the list). Discussion: https://postgr.es/m/4622.1556982247@sss.pgh.pa.us Backpatch: 9.4-11 (no master!)
1 parent 69fc943 commit 60c2951

File tree

4 files changed

+14
-10
lines changed

4 files changed

+14
-10
lines changed

src/test/regress/expected/reindex_catalog.out

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
--
22
-- Check that system tables can be reindexed.
33
--
4-
-- Note that this test currently has to run without parallel tests
5-
-- being scheduled, as currently reindex catalog tables can cause
4+
-- Note that this test currently is not included in the default
5+
-- schedules, as currently reindexing catalog tables can cause
66
-- deadlocks:
77
--
88
-- * The lock upgrade between the ShareLock acquired for the reindex
@@ -16,6 +16,11 @@
1616
-- tables are routinely released before commit - therefore the lock
1717
-- held for reindexing doesn't guarantee that no running transaction
1818
-- performed modifications in the table underlying the index.
19+
--
20+
-- This is particularly problematic as such conflicts can be
21+
-- triggered even when run in isolation, as a previous session's
22+
-- temporary table cleanup might still be running (even when the
23+
-- session ended from a client perspective).
1924
-- Check reindexing of whole tables
2025
REINDEX TABLE pg_class; -- mapped, non-shared, critical
2126
REINDEX TABLE pg_index; -- non-mapped, non-shared, critical

src/test/regress/parallel_schedule

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -57,11 +57,6 @@ test: create_misc create_operator create_procedure
5757
# These depend on the above two
5858
test: create_index create_view index_including
5959

60-
# ----------
61-
# Has to run in isolation, due to deadlock risk
62-
# ----------
63-
test: reindex_catalog
64-
6560
# ----------
6661
# Another group of parallel tests
6762
# ----------

src/test/regress/serial_schedule

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,6 @@ test: create_procedure
6767
test: create_index
6868
test: index_including
6969
test: create_view
70-
test: reindex_catalog
7170
test: create_aggregate
7271
test: create_function_3
7372
test: create_cast

src/test/regress/sql/reindex_catalog.sql

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
--
22
-- Check that system tables can be reindexed.
33
--
4-
-- Note that this test currently has to run without parallel tests
5-
-- being scheduled, as currently reindex catalog tables can cause
4+
-- Note that this test currently is not included in the default
5+
-- schedules, as currently reindexing catalog tables can cause
66
-- deadlocks:
77
--
88
-- * The lock upgrade between the ShareLock acquired for the reindex
@@ -16,6 +16,11 @@
1616
-- tables are routinely released before commit - therefore the lock
1717
-- held for reindexing doesn't guarantee that no running transaction
1818
-- performed modifications in the table underlying the index.
19+
--
20+
-- This is particularly problematic as such conflicts can be
21+
-- triggered even when run in isolation, as a previous session's
22+
-- temporary table cleanup might still be running (even when the
23+
-- session ended from a client perspective).
1924

2025

2126
-- Check reindexing of whole tables

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy