ReleaseTmpRelBuffers () releases buffers in LOCAL buffer pool now
(if rd_islocal is true).
This commit is contained in:
parent
9b94bcea21
commit
ae753b86b5
@ -7,7 +7,7 @@
|
|||||||
*
|
*
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* IDENTIFICATION
|
||||||
* $Header: /cvsroot/pgsql/src/backend/storage/buffer/bufmgr.c,v 1.5 1996/11/08 05:58:11 momjian Exp $
|
* $Header: /cvsroot/pgsql/src/backend/storage/buffer/bufmgr.c,v 1.6 1996/12/31 06:47:30 vadim Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
@ -1243,6 +1243,24 @@ ReleaseTmpRelBuffers(Relation tempreldesc)
|
|||||||
int holding = 0;
|
int holding = 0;
|
||||||
BufferDesc *buf;
|
BufferDesc *buf;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Is tempreldesc->rd_islocal == FALSE possible at all ?
|
||||||
|
* But I don't want to mess something now. - vadim 12/31/96
|
||||||
|
*/
|
||||||
|
if ( tempreldesc->rd_islocal )
|
||||||
|
{
|
||||||
|
for (i = 0; i < NLocBuffer; i++)
|
||||||
|
{
|
||||||
|
buf = &LocalBufferDescriptors[i];
|
||||||
|
if ((buf->flags & BM_DIRTY) &&
|
||||||
|
(buf->tag.relId.relId == tempreldesc->rd_id))
|
||||||
|
{
|
||||||
|
buf->flags &= ~BM_DIRTY;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
for (i=1; i<=NBuffers; i++) {
|
for (i=1; i<=NBuffers; i++) {
|
||||||
buf = &BufferDescriptors[i-1];
|
buf = &BufferDescriptors[i-1];
|
||||||
if (!holding) {
|
if (!holding) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user