aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlvaro Herrera <alvherre@alvh.no-ip.org>2019-10-18 07:18:50 -0300
committerAlvaro Herrera <alvherre@alvh.no-ip.org>2019-10-18 07:28:08 -0300
commit029390a0909f5be74e3dd9bc1ad4dbf1506287d7 (patch)
treef867f8d099bc29c15536ea820a0f46a1fdd31ab4
parent04510dbe34b9d8eef1754413806c56fcc1d369ed (diff)
downloadpostgresql-029390a0909f5be74e3dd9bc1ad4dbf1506287d7.tar.gz
postgresql-029390a0909f5be74e3dd9bc1ad4dbf1506287d7.zip
Update comments about progress reporting by index_drop
Michaƫl Paquier complained that index_drop is requesting progress reporting for non-obvious reasons, so let's add a comment to explain why. Discussion: https://postgr.es/m/20191017010412.GH2602@paquier.xyz
-rw-r--r--src/backend/catalog/index.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/backend/catalog/index.c b/src/backend/catalog/index.c
index 4f546318087..345628c42b9 100644
--- a/src/backend/catalog/index.c
+++ b/src/backend/catalog/index.c
@@ -2142,6 +2142,10 @@ index_drop(Oid indexId, bool concurrent, bool concurrent_lock_mode)
* possible if one of the transactions in question is blocked trying
* to acquire an exclusive lock on our table. The lock code will
* detect deadlock and error out properly.
+ *
+ * Note: we report progress through WaitForLockers() unconditionally
+ * here, even though it will only be used when we're called by REINDEX
+ * CONCURRENTLY and not when called by DROP INDEX CONCURRENTLY.
*/
WaitForLockers(heaplocktag, AccessExclusiveLock, true);
@@ -2157,7 +2161,7 @@ index_drop(Oid indexId, bool concurrent, bool concurrent_lock_mode)
/*
* Wait till every transaction that saw the old index state has
- * finished.
+ * finished. See above about progress reporting.
*/
WaitForLockers(heaplocktag, AccessExclusiveLock, true);