Commit a3c9ef76 authored by Tom Lane's avatar Tom Lane

I think reindex_index had better get AccessExclusiveLock on the parent

heap, not just ExclusiveLock.
parent e167510a
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
* *
* *
* IDENTIFICATION * IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/catalog/index.c,v 1.194 2002/09/03 01:04:41 tgl Exp $ * $Header: /cvsroot/pgsql/src/backend/catalog/index.c,v 1.195 2002/09/03 16:00:02 tgl Exp $
* *
* *
* INTERFACE ROUTINES * INTERFACE ROUTINES
...@@ -1818,7 +1818,7 @@ reindex_index(Oid indexId, bool force, bool inplace) ...@@ -1818,7 +1818,7 @@ reindex_index(Oid indexId, bool force, bool inplace)
indexInfo = BuildIndexInfo(iRel->rd_index); indexInfo = BuildIndexInfo(iRel->rd_index);
/* Open the parent heap relation */ /* Open the parent heap relation */
heapRelation = heap_open(heapId, ExclusiveLock); heapRelation = heap_open(heapId, AccessExclusiveLock);
if (heapRelation == NULL) if (heapRelation == NULL)
elog(ERROR, "reindex_index: can't open heap relation"); elog(ERROR, "reindex_index: can't open heap relation");
...@@ -1919,8 +1919,8 @@ reindex_relation(Oid relid, bool force) ...@@ -1919,8 +1919,8 @@ reindex_relation(Oid relid, bool force)
/* /*
* Ensure to hold an exclusive lock throughout the transaction. The * Ensure to hold an exclusive lock throughout the transaction. The
* lock could be less intensive but now it's AccessExclusiveLock for * lock could be less intensive (in the non-overwrite path) but now
* simplicity. * it's AccessExclusiveLock for simplicity.
*/ */
rel = heap_open(relid, AccessExclusiveLock); rel = heap_open(relid, AccessExclusiveLock);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment