Failed assertion during recovery of partial WAL file

From: Martin Pihlak <martin(dot)pihlak(at)gmail(dot)com>
To: Pg Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Failed assertion during recovery of partial WAL file
Date: 2010-02-05 13:46:32
Message-ID: 4B6C2138.7060109@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Encountered the following FailedAssertion while testing database
recovery (actually this would be HS) with partial WAL file:

LOG: restored log file "000000010000000000000003" from archive
LOG: consistent recovery state reached at 0/3001EEC
LOG: record with zero length at 0/3001EEC
LOG: redo done at 0/3001D68
LOG: last completed transaction was at log time 2010-02-05 11:02:49.695544+02
LOG: database system is ready to accept read only connections
LOG: selected new timeline ID: 3
TRAP: FailedAssertion("!(readFile >= 0)", File: "xlog.c", Line: 5117)

and the assorted backtrace:
#0 0xb7f2e410 in __kernel_vsyscall ()
#1 0xb7dc9085 in raise () from /lib/tls/i686/cmov/libc.so.6
#2 0xb7dcaa01 in abort () from /lib/tls/i686/cmov/libc.so.6
#3 0x0834926e in ExceptionalCondition (conditionName=0x8389a82 "!(readFile >= 0)",
errorType=0x837d5b4 "FailedAssertion",
fileName=0x8390338 "xlog.c", lineNumber=5117) at assert.c:57
#4 0x080dde34 in exitArchiveRecovery (endTLI=1, endLogId=0, endLogSeg=18) at xlog.c:5117
#5 0x080e3eab in StartupXLOG () at xlog.c:6029
#6 0x080e6055 in StartupProcessMain () at xlog.c:8666
#7 0x08106a30 in AuxiliaryProcessMain (argc=2, argv=0xbfebdd64) at bootstrap.c:412
#8 0x08253f0c in StartChildProcess (type=StartupProcess) at postmaster.c:4340
#9 0x0825669e in PostmasterMain (argc=3, argv=0x8516e08) at postmaster.c:1078
#10 0x081f7919 in main (argc=3, argv=0x8516e08) at main.c:188

The crash happened on a HS slave which was fed a partial WAL file. The
partial was constructed by extracting data up to pg_current_xlog_location()
and zero padding it up to 16MB.

This only seems to be happening on HEAD - quick tests indicate that both
8.3 and 8.4 are not affected (or maybe I didn't try hard enough).

regards,
Martin

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Bruce Momjian 2010-02-05 14:19:26 Confusion over Python drivers
Previous Message Tim Bunce 2010-02-05 13:40:44 Add on_plperl_init and on_plperlu_init to plperl UPDATE 3 [PATCH]