*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/storage/buffer/bufmgr.c,v 1.162 2004/04/21 18:06:30 tgl Exp $
+ * $PostgreSQL: pgsql/src/backend/storage/buffer/bufmgr.c,v 1.163 2004/04/22 07:21:55 neilc Exp $
*
*-------------------------------------------------------------------------
*/
bool zero_damaged_pages = false;
#ifdef NOT_USED
-int ShowPinTrace = 0;
+bool ShowPinTrace = false;
#endif
int BgWriterDelay = 200;
if (isCommit)
elog(WARNING,
"buffer refcount leak: [%03d] "
- "(rel=%u/%u, blockNum=%u, flags=0x%x, refcount=%d %ld)",
+ "(rel=%u/%u, blockNum=%u, flags=0x%x, refcount=%u %d)",
i,
buf->tag.rnode.tblNode, buf->tag.rnode.relNode,
buf->tag.blockNum, buf->flags,
{
/* the sole pin should be ours */
if (bufHdr->refcount != 1 || PrivateRefCount[i - 1] == 0)
- elog(FATAL, "block %u of %u/%u is still referenced (private %ld, global %d)",
+ elog(FATAL, "block %u of %u/%u is still referenced (private %d, global %u)",
bufHdr->tag.blockNum,
bufHdr->tag.rnode.tblNode,
bufHdr->tag.rnode.relNode,
LWLockAcquire(BufMgrLock, LW_EXCLUSIVE);
for (i = 0; i < NBuffers; ++i, ++buf)
{
- elog(LOG, "[%02d] (freeNext=%d, freePrev=%d, rel=%u/%u, \
-blockNum=%u, flags=0x%x, refcount=%d %ld)",
+ elog(LOG,
+ "[%02d] (freeNext=%d, freePrev=%d, rel=%u/%u, "
+ "blockNum=%u, flags=0x%x, refcount=%u %d)",
i, buf->freeNext, buf->freePrev,
buf->tag.rnode.tblNode, buf->tag.rnode.relNode,
buf->tag.blockNum, buf->flags,
/* interactive backend */
for (i = 0; i < NBuffers; ++i, ++buf)
{
- printf("[%-2d] (%u/%u, %u) flags=0x%x, refcnt=%d %ld)\n",
+ printf("[%-2d] (%u/%u, %u) flags=0x%x, refcount=%u %d)\n",
i, buf->tag.rnode.tblNode, buf->tag.rnode.relNode,
buf->tag.blockNum,
buf->flags, buf->refcount, PrivateRefCount[i]);
for (i = 0; i < NBuffers; ++i, ++buf)
{
if (PrivateRefCount[i] > 0)
- elog(WARNING, "[%02d] (freeNext=%d, freePrev=%d, rel=%u/%u, \
-blockNum=%u, flags=0x%x, refcount=%d %ld)",
+ elog(WARNING,
+ "[%02d] (freeNext=%d, freePrev=%d, rel=%u/%u, "
+ "blockNum=%u, flags=0x%x, refcount=%u %d)",
i, buf->freeNext, buf->freePrev,
buf->tag.rnode.tblNode, buf->tag.rnode.relNode,
buf->tag.blockNum, buf->flags,
}
if (LocalRefCount[i] > 0)
{
- elog(WARNING, "FlushRelationBuffers(\"%s\" (local), %u): block %u is referenced (%ld)",
+ elog(WARNING, "FlushRelationBuffers(\"%s\" (local), %u): block %u is referenced (%d)",
RelationGetRelationName(rel), firstDelBlock,
bufHdr->tag.blockNum, LocalRefCount[i]);
return (-2);
if (bufHdr->refcount != 0)
{
LWLockRelease(BufMgrLock);
- elog(WARNING, "FlushRelationBuffers(\"%s\", %u): block %u is referenced (private %ld, global %d)",
+ elog(WARNING, "FlushRelationBuffers(\"%s\", %u): block %u is referenced (private %d, global %u)",
RelationGetRelationName(rel), firstDelBlock,
bufHdr->tag.blockNum,
PrivateRefCount[i], bufHdr->refcount);
{
BufferDesc *buf = &BufferDescriptors[buffer - 1];
- fprintf(stderr, "PIN(Incr) %d rel = %u/%u, blockNum = %u, \
-refcount = %ld, file: %s, line: %d\n",
+ fprintf(stderr,
+ "PIN(Incr) %d rel = %u/%u, blockNum = %u, "
+ "refcount = %d, file: %s, line: %d\n",
buffer,
buf->tag.rnode.tblNode, buf->tag.rnode.relNode,
buf->tag.blockNum,
{
BufferDesc *buf = &BufferDescriptors[buffer - 1];
- fprintf(stderr, "UNPIN(Rel) %d rel = %u/%u, blockNum = %u, \
-refcount = %ld, file: %s, line: %d\n",
+ fprintf(stderr,
+ "UNPIN(Rel) %d rel = %u/%u, blockNum = %u, "
+ "refcount = %d, file: %s, line: %d\n",
buffer,
buf->tag.rnode.tblNode, buf->tag.rnode.relNode,
buf->tag.blockNum,
{
BufferDesc *buf = &BufferDescriptors[buffer - 1];
- fprintf(stderr, "UNPIN(Rel&Rd) %d rel = %u/%u, blockNum = %u, \
-refcount = %ld, file: %s, line: %d\n",
+ fprintf(stderr,
+ "UNPIN(Rel&Rd) %d rel = %u/%u, blockNum = %u, "
+ "refcount = %d, file: %s, line: %d\n",
buffer,
buf->tag.rnode.tblNode, buf->tag.rnode.relNode,
buf->tag.blockNum,
{
BufferDesc *buf = &BufferDescriptors[b - 1];
- fprintf(stderr, "PIN(Rel&Rd) %d rel = %u/%u, blockNum = %u, \
-refcount = %ld, file: %s, line: %d\n",
+ fprintf(stderr,
+ "PIN(Rel&Rd) %d rel = %u/%u, blockNum = %u, "
+ "refcount = %d, file: %s, line: %d\n",
b,
buf->tag.rnode.tblNode, buf->tag.rnode.relNode,
buf->tag.blockNum,
{
/* There should be exactly one pin */
if (LocalRefCount[-buffer - 1] != 1)
- elog(ERROR, "incorrect local pin count: %ld",
+ elog(ERROR, "incorrect local pin count: %d",
LocalRefCount[-buffer - 1]);
/* Nobody else to wait for */
return;
/* There should be exactly one local pin */
if (PrivateRefCount[buffer - 1] != 1)
- elog(ERROR, "incorrect local pin count: %ld",
+ elog(ERROR, "incorrect local pin count: %d",
PrivateRefCount[buffer - 1]);
bufHdr = &BufferDescriptors[buffer - 1];
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/storage/buffer/localbuf.c,v 1.53 2004/04/21 18:06:30 tgl Exp $
+ * $PostgreSQL: pgsql/src/backend/storage/buffer/localbuf.c,v 1.54 2004/04/22 07:21:55 neilc Exp $
*
*-------------------------------------------------------------------------
*/
BufferDesc *LocalBufferDescriptors = NULL;
Block *LocalBufferBlockPointers = NULL;
-long *LocalRefCount = NULL;
+int32 *LocalRefCount = NULL;
static int nextFreeLocalBuf = 0;
/*
* these aren't going away. I'm not gonna use palloc.
*/
- LocalBufferDescriptors =
- (BufferDesc *) calloc(NLocBuffer, sizeof(BufferDesc));
- LocalBufferBlockPointers = (Block *) calloc(NLocBuffer, sizeof(Block));
- LocalRefCount = (long *) calloc(NLocBuffer, sizeof(long));
+ LocalBufferDescriptors = (BufferDesc *)
+ calloc(NLocBuffer, sizeof(*LocalBufferDescriptors));
+ LocalBufferBlockPointers = (Block *)
+ calloc(NLocBuffer, sizeof(*LocalBufferBlockPointers));
+ LocalRefCount = (int32 *)
+ calloc(NLocBuffer, sizeof(*LocalRefCount));
nextFreeLocalBuf = 0;
for (i = 0; i < NLocBuffer; i++)
if (isCommit)
elog(WARNING,
- "local buffer leak: [%03d] (rel=%u/%u, blockNum=%u, flags=0x%x, refcount=%d %ld)",
+ "local buffer leak: [%03d] (rel=%u/%u, blockNum=%u, flags=0x%x, refcount=%u %d)",
i,
buf->tag.rnode.tblNode, buf->tag.rnode.relNode,
buf->tag.blockNum, buf->flags,