On 2018-08-30 16:44, Alvaro Herrera wrote:
On 2018-Aug-30, Erik Rijkers wrote:
ok, is this any use?
Seems mostly good, but the Xids are not printed. Could you please do
"bt full"? Also:
frame 3
print *snap
See the attached.
# gdb --quiet -ex 'bt full' --batch
/var/data1/pg_stuff/pg_installations/pgsql.REL_11_STABLE/bin/postgres
/var/data1/pg_stuff/tmp/cascade/REL_11_STABLE/6516_gW1Cl/data/core &>
gdb_bt_full.txt
[New LWP 147484]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Core was generated by `postgres: walsender rijkers [local] idle in transaction
'.
Program terminated with signal SIGABRT, Aborted.
#0 0x00007f0fd20e7067 in __GI_raise (sig=sig@entry=6) at
../nptl/sysdeps/unix/sysv/linux/raise.c:56
56 ../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or directory.
#0 0x00007f0fd20e7067 in __GI_raise (sig=sig@entry=6) at
../nptl/sysdeps/unix/sysv/linux/raise.c:56
resultvar = 0
pid = 147484
selftid = 147484
#1 0x00007f0fd20e8448 in __GI_abort () at abort.c:89
save_stage = 2
act = {__sigaction_handler = {sa_handler = 0x0, sa_sigaction = 0x0},
sa_mask = {__val = {0, 35419576, 139705945370615, 1, 0, 2, 139705925209384,
773155, 35419576, 36381032, 139705945396501, 0, 139705926081536, 0,
139705929013136, 139705929007200}}, sa_flags = -748812544, sa_restorer =
0x7f0fd20fd99a <_IO_vfprintf_internal+22490>}
sigs = {__val = {32, 0 <repeats 15 times>}}
#2 0x00000000008880bf in ExceptionalCondition
(conditionName=conditionName@entry=0xa417f8
"!(TransactionIdPrecedesOrEquals(safeXid, snap->xmin))",
errorType=errorType@entry=0x8d365d "FailedAssertion",
fileName=fileName@entry=0xa41223 "snapbuild.c",
lineNumber=lineNumber@entry=580) at assert.c:54
No locals.
#3 0x000000000072676e in SnapBuildInitialSnapshot () at snapbuild.c:580
safeXid = 773155
snap = 0x22b2168
xid = 0
newxip = <optimized out>
newxcnt = 0
__func__ = "SnapBuildInitialSnapshot"
#4 0x000000000072ed54 in CreateReplicationSlot (cmd=0x223bae0) at
walsender.c:951
snap = <optimized out>
ctx = 0x21c75b8
need_full_snapshot = true
snapshot_name = 0x0
nulls = {false, false, false, false}
xloc =
"\001\231\034\002\000\000\000\000\030\347\031\002\002\000\000\000\000\000\000\000\002\000\000\000Q\000\000\000\000\000\000\000\370\034\032\002\000\000\000\000\030\347\031\002\000\000\000\000È»\034\002",
'\000' <repeats 11 times>
slot_name = <optimized out>
tstate = <optimized out>
tupdesc = <optimized out>
values = {0, 103, 8192, 6683594}
reserve_wal = <optimized out>
snapshot_action = <optimized out>
dest = <optimized out>
__func__ = "CreateReplicationSlot"
#5 exec_replication_command (cmd_string=cmd_string@entry=0x21a1cf8
"CREATE_REPLICATION_SLOT \"sub2_6517_6517_18748_sync_18728\" TEMPORARY LOGICAL
pgoutput USE_SNAPSHOT") at walsender.c:1527
parse_rc = <optimized out>
cmd_node = 0x223bae0
cmd_context = 0x223b410
old_context = 0x21a1be0
__func__ = "exec_replication_command"
#6 0x000000000077e8ee in PostgresMain (argc=<optimized out>,
argv=argv@entry=0x21cbbc8, dbname=<optimized out>, username=<optimized out>) at
postgres.c:4155
query_string = 0x21a1cf8 "CREATE_REPLICATION_SLOT
\"sub2_6517_6517_18748_sync_18728\" TEMPORARY LOGICAL pgoutput USE_SNAPSHOT"
firstchar = <optimized out>
input_message = {data = 0x21a1cf8 "CREATE_REPLICATION_SLOT
\"sub2_6517_6517_18748_sync_18728\" TEMPORARY LOGICAL pgoutput USE_SNAPSHOT",
len = 98, maxlen = 1024, cursor = 98}
local_sigjmp_buf = {{__jmpbuf = {657920533, -5186006737813875216,
35251992, 35437512, 1535629124, 35251992, 5188120396153509360,
-5186006335271315984}, __mask_was_saved = 1, __saved_mask = {__val = {0,
35437440, 10709497, 35251992, 35265504, 1024, 35437512, 35437512, 9122032, 0,
9094142, 14351168, 140721267739056, 35437512, 9011115, 35270984}}}}
send_ready_for_query = false
disable_idle_in_transaction_timeout = false
__func__ = "PostgresMain"
#7 0x0000000000704fde in BackendRun (port=0x21c4520) at postmaster.c:4361
ac = 1
secs = 588944346
usecs = 999759
i = 1
av = 0x21cbbc8
maxac = 2
__func__ = "BackendRun"
#8 BackendStartup (port=0x21c4520) at postmaster.c:4033
bn = <optimized out>
pid = <optimized out>
__func__ = "BackendStartup"
#9 ServerLoop () at postmaster.c:1706
port = 0x21c4520
rmask = {fds_bits = {32, 0 <repeats 15 times>}}
selres = <optimized out>
now = <optimized out>
readmask = {fds_bits = {56, 0 <repeats 15 times>}}
nSockets = 6
last_lockfile_recheck_time = <optimized out>
last_touch_time = <optimized out>
__func__ = "ServerLoop"
#10 0x0000000000705e0f in PostmasterMain (argc=argc@entry=12,
argv=argv@entry=0x219c470) at postmaster.c:1379
opt = <optimized out>
status = <optimized out>
userDoption = <optimized out>
listen_addr_saved = <optimized out>
i = <optimized out>
output_config_variable = <optimized out>
__func__ = "PostmasterMain"
#11 0x0000000000478d80 in main (argc=12, argv=0x219c470) at main.c:228
No locals.
#----------------
$ gdb --quiet
/var/data1/pg_stuff/pg_installations/pgsql.REL_11_STABLE/bin/postgres
/var/data1/pg_stuff/tmp/cascade/REL_11_STABLE/6516_gW1Cl/data/core
Reading symbols from
/var/data1/pg_stuff/pg_installations/pgsql.REL_11_STABLE/bin/postgres...done.
[New LWP 147484]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Core was generated by `postgres: walsender rijkers [local] idle in transaction
'.
Program terminated with signal SIGABRT, Aborted.
#0 0x00007f0fd20e7067 in __GI_raise (sig=sig@entry=6) at
../nptl/sysdeps/unix/sysv/linux/raise.c:56
56 ../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) frame 3
#3 0x000000000072676e in SnapBuildInitialSnapshot () at snapbuild.c:580
580 Assert(TransactionIdPrecedesOrEquals(safeXid,
snap->xmin));
(gdb) print *snap
$1 = {satisfies = 0x8c4700 <HeapTupleSatisfiesHistoricMVCC>, xmin = 772089,
xmax = 772089, xip = 0x22b21d0, xcnt = 0, subxip = 0x0, subxcnt = 0,
suboverflowed = false, takenDuringRecovery = false, copied = false, curcid = 0,
speculativeToken = 0, active_count = 0, regd_count = 0, ph_node = {
first_child = 0x0, next_sibling = 0x0, prev_or_parent = 0x0}, whenTaken =
0, lsn = 0}
(gdb)