aboutsummaryrefslogtreecommitdiff
path: root/src/backend/access/transam/xlogutils.c
diff options
context:
space:
mode:
authorHiroshi Inoue <inoue@tpf.co.jp>2001-02-22 08:59:40 +0000
committerHiroshi Inoue <inoue@tpf.co.jp>2001-02-22 08:59:40 +0000
commit50e3c60b9579a40b8878388076babafa14ae937c (patch)
tree8176d6620dfbb73ed1c336f294bb3a16d8501fcf /src/backend/access/transam/xlogutils.c
parentb200d0993df95171186751ee51145d1efd39dbf3 (diff)
downloadpostgresql-50e3c60b9579a40b8878388076babafa14ae937c.tar.gz
postgresql-50e3c60b9579a40b8878388076babafa14ae937c.zip
Avoid 'FATAL: out of free buffers: time to abort !" error
during WAL recovery. Recovery failure is always serious.
Diffstat (limited to 'src/backend/access/transam/xlogutils.c')
-rw-r--r--src/backend/access/transam/xlogutils.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/backend/access/transam/xlogutils.c b/src/backend/access/transam/xlogutils.c
index 6ff51d01fd4..8735db1ae1c 100644
--- a/src/backend/access/transam/xlogutils.c
+++ b/src/backend/access/transam/xlogutils.c
@@ -198,6 +198,8 @@ XLogReadBuffer(bool extend, Relation reln, BlockNumber blkno)
Assert(InRecovery);
while (lastblock <= blkno)
{
+ if (buffer != InvalidBuffer)
+ ReleaseBuffer(buffer); /* must be WriteBuffer()? */
buffer = ReadBuffer(reln, P_NEW);
lastblock++;
}