"Tom Lane" <tgl@xxxxxxxxxxxxx> wrote > > While at it, you should extend the error message to include the relation > ID, so you have some idea which table is affected ... this is certainly > not a very informative message ... > Exactly. Please use the following version: - elog(PANIC, "heap_update_redo: no block"); + elog(PANIC, "heap_update_redo: no block: target blcknum: %u, relation(%u/%u/%u) length: %u", + ItemPointerGetBlockNumber(&(xlrec->target.tid)), + reln->rd_node.spcNode, + reln->rd_node.dbNode, + reln->rd_node.relNode, + RelationGetNumberOfBlocks(reln)); BTW: I just realized that there is another (better) way to do so is to enable WAL_DEBUG in xlog.h and SET XLOG_DEBUG=true. And that's why we don't have much error message in xlog redo. Regards, Qingqing