I noticed that HEAD crashes at startup with assertions disabled and
WAL_DEBUG turned on:
#2 0x00000000007af987 in ExceptionalCondition (
conditionName=conditionName@entry=0x974448 "!(CritSectionCount == 0 || (CurrentMemoryContext) == ErrorContext ||
(MyAuxProcType== CheckpointerProcess))",
errorType=errorType@entry=0x7e9bec "FailedAssertion",
fileName=fileName@entry=0x974150 "/pgsql/source/minmax/src/backend/utils/mmgr/mcxt.c",
lineNumber=lineNumber@entry=670) at /pgsql/source/minmax/src/backend/utils/error/assert.c:54
#3 0x00000000007d2080 in palloc (size=1024) at /pgsql/source/minmax/src/backend/utils/mmgr/mcxt.c:670
#4 0x00000000005f3abe in initStringInfo (str=str@entry=0x7fff11f68a80)
at /pgsql/source/minmax/src/backend/lib/stringinfo.c:50
#5 0x00000000004f42ca in XLogInsert (rmid=48 '0', rmid@entry=0 '\000', info=<optimized out>,
info@entry=0 '\000', rdata=rdata@entry=0x7fff11f68d30)
at /pgsql/source/minmax/src/backend/access/transam/xlog.c:1262
#6 0x00000000004f4f17 in CreateCheckPoint (flags=flags@entry=6)
at /pgsql/source/minmax/src/backend/access/transam/xlog.c:8197
#7 0x00000000004f8079 in StartupXLOG () at /pgsql/source/minmax/src/backend/access/transam/xlog.c:7097
I'm using an interim fix by excepting the startup process (see attached
patch), like the current code does for checkpointer, but I guess a more
robust solution should be sought.
I find it strange that nobody has seen this before.
--
Álvaro Herrera http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services