On 25/01/13 10:36, Tom Lane wrote:
Mark Kirkwood <mark.kirkw...@catalyst.net.nz> writes:
Doh! Yes of course, sorry for the noise. I was busy thinking that the
issue could be tied up with sinval and plan caching (if there is any) in
plr and got excited about seeing something in gdb...and didn't think
carefully about why what I was seeing was not a bug at all :-( Thanks
for clarifying!

FWIW, presumably the failure comes from something throwing elog(ERROR)
after RecordTransactionCommit().  So what I'd try is setting a
breakpoint at errfinish and investigating what's causing the first error
call.

If I have done this right, then this is the trace for the 1st message... from my wandering through the calls here it looks like a normal commit, and something goes a bit weird as SI messages are being processed...

0x00007f4e2a538425 in raise () from /lib/x86_64-linux-gnu/libc.so.6
(gdb) bt
#0  0x00007f4e2a538425 in raise () from /lib/x86_64-linux-gnu/libc.so.6
#1  0x00007f4e2a53bb8b in abort () from /lib/x86_64-linux-gnu/libc.so.6
#2  0x00000000006e0a70 in errfinish (dummy=dummy@entry=0) at elog.c:523
#3  0x00000000006e3031 in elog_finish (elevel=elevel@entry=22,
fmt=fmt@entry=0x714d58 "cannot abort transaction %u, it was already committed") at elog.c:1202
#4  0x0000000000481d87 in RecordTransactionAbort (
    isSubXact=isSubXact@entry=0 '\000') at xact.c:1366
#5  0x0000000000481e89 in AbortTransaction () at xact.c:2272
#6  0x00000000004851c5 in AbortOutOfAnyTransaction () at xact.c:3807
#7  0x00000000006eddc9 in ShutdownPostgres (code=<optimized out>,
    arg=<optimized out>) at postinit.c:976
#8  0x0000000000610b7d in shmem_exit (code=code@entry=-1) at ipc.c:221
#9  0x0000000000610bf5 in proc_exit_prepare (code=-1) at ipc.c:181
#10 0x00007f4e2a53d901 in ?? () from /lib/x86_64-linux-gnu/libc.so.6
#11 0x00007f4e2a53d985 in exit () from /lib/x86_64-linux-gnu/libc.so.6
#12 0x00007f4e272b951a in ?? () from /usr/lib/libR.so
#13 <signal handler called>
#14 0x00007f4e2a538707 in kill () from /lib/x86_64-linux-gnu/libc.so.6
#15 0x00000000006152e5 in SICleanupQueue (
    callerHasWriteLock=callerHasWriteLock@entry=1 '\001',
    minFree=minFree@entry=4) at sinvaladt.c:672
#16 0x00000000006153bd in SIInsertDataEntries (data=0x3943b70, n=0)
    at sinvaladt.c:437
#17 0x00000000006d1371 in ProcessInvalidationMessagesMulti (
    hdr=hdr@entry=0x204a280, func=0x6149f0 <SendSharedInvalidMessages>)
    at inval.c:402
#18 0x00000000006d2020 in AtEOXact_Inval (isCommit=isCommit@entry=1 '\001')
    at inval.c:940
#19 0x0000000000482bdd in CommitTransaction () at xact.c:1893
#20 0x0000000000484975 in CommitTransactionCommand () at xact.c:2562
#21 0x00000000006276d3 in finish_xact_command () at postgres.c:2452
#22 finish_xact_command () at postgres.c:2441
#23 0x000000000062a6f5 in exec_simple_query (query_string=0x20e8d70 "COMMIT;")
    at postgres.c:1037
#24 PostgresMain (argc=<optimized out>, argv=argv@entry=0x20476b8,
    username=<optimized out>) at postgres.c:3968
#25 0x00000000005ee92f in BackendRun (port=0x2068f40) at postmaster.c:3617
#26 BackendStartup (port=0x2068f40) at postmaster.c:3302
#27 ServerLoop () at postmaster.c:1466
#28 0x00000000005ef4dc in PostmasterMain (argc=argc@entry=1,
    argv=argv@entry=0x2044640) at postmaster.c:1127
#29 0x0000000000453edb in main (argc=1, argv=0x2044640) at main.c:199



--
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