Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitb9fda39

Browse files
committed
Added call to heap_endscan in IndexIsUniqueNoCache - to release
our READ lock on pg_index and let others to create indices too !
1 parentdd07f76 commitb9fda39

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

‎src/backend/catalog/index.c

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
*
88
*
99
* IDENTIFICATION
10-
* $Header: /cvsroot/pgsql/src/backend/catalog/index.c,v 1.13 1997/03/24 07:39:47 vadim Exp $
10+
* $Header: /cvsroot/pgsql/src/backend/catalog/index.c,v 1.14 1997/03/27 04:13:44 vadim Exp $
1111
*
1212
*
1313
* INTERFACE ROUTINES
@@ -1714,7 +1714,7 @@ IndexIsUnique(Oid indexId)
17141714
ObjectIdGetDatum(indexId),
17151715
0,0,0);
17161716
if(!HeapTupleIsValid(tuple)) {
1717-
elog(WARN,"Can't find index id %d in IndexIsUnique",
1717+
elog(WARN,"IndexIsUnique: can't find index id %d",
17181718
indexId);
17191719
}
17201720
index= (IndexTupleForm)GETSTRUCT(tuple);
@@ -1742,7 +1742,6 @@ IndexIsUniqueNoCache(Oid indexId)
17421742
ScanKeyDataskey[1];
17431743
HeapScanDescscandesc;
17441744
HeapTupletuple;
1745-
Bufferb;
17461745
IndexTupleFormindex;
17471746
boolisunique;
17481747

@@ -1755,15 +1754,16 @@ IndexIsUniqueNoCache(Oid indexId)
17551754

17561755
scandesc=heap_beginscan(pg_index,0,SelfTimeQual,1,skey);
17571756

1758-
tuple=heap_getnext(scandesc,0,&b);
1757+
tuple=heap_getnext(scandesc,0,NULL);
17591758
if(!HeapTupleIsValid(tuple)) {
1760-
elog(WARN,"Can't find index id %d in IndexIsUniqueNoCache",
1759+
elog(WARN,"IndexIsUniqueNoCache: can't find index id %d",
17611760
indexId);
17621761
}
17631762
index= (IndexTupleForm)GETSTRUCT(tuple);
17641763
Assert(index->indexrelid==indexId);
17651764
isunique=index->indisunique;
17661765

1767-
ReleaseBuffer(b);
1766+
heap_endscan (scandesc);
1767+
heap_close (pg_index);
17681768
returnisunique;
17691769
}

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp