I think reindex_index had better get AccessExclusiveLock on the parent
heap, not just ExclusiveLock.
This commit is contained in:
parent
e167510a4f
commit
a3c9ef766b
@ -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)
|
|||||||
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)
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* 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);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user