mirror of
				https://github.com/postgres/postgres.git
				synced 2025-10-29 22:49:41 +03:00 
			
		
		
		
	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 f912d7dec2 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!)
			
			
This commit is contained in:
		| @@ -1,8 +1,8 @@ | |||||||
| -- | -- | ||||||
| -- Check that system tables can be reindexed. | -- Check that system tables can be reindexed. | ||||||
| -- | -- | ||||||
| -- Note that this test currently has to run without parallel tests | -- Note that this test currently is not included in the default | ||||||
| -- being scheduled, as currently reindex catalog tables can cause | -- schedules, as currently reindexing catalog tables can cause | ||||||
| -- deadlocks: | -- deadlocks: | ||||||
| -- | -- | ||||||
| -- * The lock upgrade between the ShareLock acquired for the reindex | -- * The lock upgrade between the ShareLock acquired for the reindex | ||||||
| @@ -16,6 +16,11 @@ | |||||||
| --   tables are routinely released before commit - therefore the lock | --   tables are routinely released before commit - therefore the lock | ||||||
| --   held for reindexing doesn't guarantee that no running transaction | --   held for reindexing doesn't guarantee that no running transaction | ||||||
| --   performed modifications in the table underlying the index. | --   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 | -- Check reindexing of whole tables | ||||||
| REINDEX TABLE pg_class; -- mapped, non-shared, critical | REINDEX TABLE pg_class; -- mapped, non-shared, critical | ||||||
| REINDEX TABLE pg_index; -- non-mapped, non-shared, critical | REINDEX TABLE pg_index; -- non-mapped, non-shared, critical | ||||||
|   | |||||||
| @@ -57,11 +57,6 @@ test: create_misc create_operator | |||||||
| # These depend on the above two | # These depend on the above two | ||||||
| test: create_index create_view | test: create_index create_view | ||||||
|  |  | ||||||
| # ---------- |  | ||||||
| # Has to run in isolation, due to deadlock risk |  | ||||||
| # ---------- |  | ||||||
| test: reindex_catalog |  | ||||||
|  |  | ||||||
| # ---------- | # ---------- | ||||||
| # Another group of parallel tests | # Another group of parallel tests | ||||||
| # ---------- | # ---------- | ||||||
|   | |||||||
| @@ -65,7 +65,6 @@ test: create_misc | |||||||
| test: create_operator | test: create_operator | ||||||
| test: create_index | test: create_index | ||||||
| test: create_view | test: create_view | ||||||
| test: reindex_catalog |  | ||||||
| test: create_aggregate | test: create_aggregate | ||||||
| test: create_function_3 | test: create_function_3 | ||||||
| test: create_cast | test: create_cast | ||||||
|   | |||||||
| @@ -1,8 +1,8 @@ | |||||||
| -- | -- | ||||||
| -- Check that system tables can be reindexed. | -- Check that system tables can be reindexed. | ||||||
| -- | -- | ||||||
| -- Note that this test currently has to run without parallel tests | -- Note that this test currently is not included in the default | ||||||
| -- being scheduled, as currently reindex catalog tables can cause | -- schedules, as currently reindexing catalog tables can cause | ||||||
| -- deadlocks: | -- deadlocks: | ||||||
| -- | -- | ||||||
| -- * The lock upgrade between the ShareLock acquired for the reindex | -- * The lock upgrade between the ShareLock acquired for the reindex | ||||||
| @@ -16,6 +16,11 @@ | |||||||
| --   tables are routinely released before commit - therefore the lock | --   tables are routinely released before commit - therefore the lock | ||||||
| --   held for reindexing doesn't guarantee that no running transaction | --   held for reindexing doesn't guarantee that no running transaction | ||||||
| --   performed modifications in the table underlying the index. | --   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 | -- Check reindexing of whole tables | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user