The following bug has been logged online:

Bug reference:      5915
Logged by:          YAMAMOTO Takashi
Email address:      y...@mwd.biglobe.ne.jp
PostgreSQL version: 9.1devel
Operating system:   NetBSD
Description:        OldSerXidAdd inflates pg_serial too much
Details: 

a seemingly wrong math in OldSerXidAdd makes it busy writing zeros
to pg_serial.


diff --git a/src/backend/storage/lmgr/predicate.c
b/src/backend/storage/lmgr/predicate.c
index aa657fa..297508b 100644
--- a/src/backend/storage/lmgr/predicate.c
+++ b/src/backend/storage/lmgr/predicate.c
@@ -755,7 +755,7 @@ OldSerXidAdd(TransactionId xid, SerCommitSeqNo
minConflictCommitSeqNo)
        {
                page = OldSerXidPage(tailXid);
                oldSerXidControl->tailSegment = OldSerXidSegment(page);
-               page = oldSerXidControl->tailSegment * OLDSERXID_ENTRIESPERPAGE;
+               page = oldSerXidControl->tailSegment * SLRU_PAGES_PER_SEGMENT;
                isNewPage = true;
        }
        else

-- 
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs

Reply via email to