diff --git a/src/backend/access/transam/xloginsert.c b/src/backend/access/transam/xloginsert.c index b96c39ac65..0b89c0a7a2 100644 --- a/src/backend/access/transam/xloginsert.c +++ b/src/backend/access/transam/xloginsert.c @@ -122,12 +122,14 @@ XLogBeginInsert(void) Assert(max_registered_block_id == 0); Assert(mainrdata_last == (XLogRecData *) &mainrdata_head); Assert(mainrdata_len == 0); - Assert(!begininsert_called); /* cross-check on whether we should be here or not */ if (!XLogInsertAllowed()) elog(ERROR, "cannot make new WAL entries during recovery"); + if (begininsert_called) + elog(ERROR, "XLogBeginInsert was already called"); + begininsert_called = true; }