Re: Parallel scan with SubTransGetTopmostTransaction assert coredump

From: Greg Nancarrow <gregn4422(at)gmail(dot)com>
To: Pavel Borisov <pashkin(dot)elfe(at)gmail(dot)com>
Cc: Robert Haas <robertmhaas(at)gmail(dot)com>, Tomas Vondra <tomas(dot)vondra(at)enterprisedb(dot)com>, Maxim Orlov <m(dot)orlov(at)postgrespro(dot)ru>, Michael Paquier <michael(at)paquier(dot)xyz>, Pengchengliu <pengchengliu(at)tju(dot)edu(dot)cn>, Andres Freund <andres(at)anarazel(dot)de>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Parallel scan with SubTransGetTopmostTransaction assert coredump
Date: 2021-08-04 11:54:20
Message-ID: CAJcOf-d65vZK4r-5W6asJ=xdzT61MMktAys2et2DBxNSUMgnLQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Wed, Aug 4, 2021 at 8:17 PM Greg Nancarrow <gregn4422(at)gmail(dot)com> wrote:
>
> Ah, thanks for that (I didn't debug that failure).
> But is the coredump issue reproducible now? (using v7 and your test script)
>

Er, with the v7 patch, the problem still occurs (that Assert still
fires during a run of the SubTransGetTopmostTransaction-rep.sh
script).
Stracktrace from the coredump is below:

#0 0x00007f06e5e7d37f in raise () from /lib64/libc.so.6
#1 0x00007f06e5e67db5 in abort () from /lib64/libc.so.6
#2 0x0000000000b06547 in ExceptionalCondition (
conditionName=0xba8d78 "TransactionIdFollowsOrEquals(xid,
TransactionXmin)", errorType=0xba8d0b "FailedAssertion",
fileName=0xba8d00 "subtrans.c", lineNumber=156) at assert.c:69
#3 0x0000000000576f0f in SubTransGetTopmostTransaction (xid=3676) at
subtrans.c:156
#4 0x0000000000b5f55a in XidInMVCCSnapshot (xid=3676,
snapshot=0x2e44560) at snapmgr.c:2293
#5 0x000000000050e014 in HeapTupleSatisfiesMVCC (htup=0x7ffdc6dee6f0,
snapshot=0x2e44560, buffer=15559)
at heapam_visibility.c:1070
#6 0x000000000050f148 in HeapTupleSatisfiesVisibility
(tup=0x7ffdc6dee6f0, snapshot=0x2e44560, buffer=15559)
at heapam_visibility.c:1771
#7 0x00000000004f1d26 in heapgetpage (sscan=0x2e9a9a0, page=10310) at
heapam.c:466
#8 0x00000000004f45cf in heapgettup_pagemode (scan=0x2e9a9a0,
dir=ForwardScanDirection, nkeys=0, key=0x0)
at heapam.c:1118
#9 0x00000000004f4c91 in heap_getnextslot (sscan=0x2e9a9a0,
direction=ForwardScanDirection, slot=0x2e8f9a0)
at heapam.c:1396
#10 0x000000000077abb1 in table_scan_getnextslot (sscan=0x2e9a9a0,
direction=ForwardScanDirection, slot=0x2e8f9a0)
at ../../../src/include/access/tableam.h:1044
#11 0x000000000077ac79 in SeqNext (node=0x2e8f428) at nodeSeqscan.c:80
#12 0x000000000073d997 in ExecScanFetch (node=0x2e8f428,
accessMtd=0x77abe5 <SeqNext>, recheckMtd=0x77ac8a <SeqRecheck>)
at execScan.c:133

Regards,
Greg Nancarrow
Fujitsu Australia

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Pavel Borisov 2021-08-04 12:06:24 Re: Parallel scan with SubTransGetTopmostTransaction assert coredump
Previous Message Masahiko Sawada 2021-08-04 11:46:09 Re: Skipping logical replication transactions on subscriber side