-
Type:
Bug
-
Resolution: Unresolved
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
-
Storage Engines, Storage Engines - Persistence
-
SE Persistence backlog
-
None
Running :
python3 ../test/suite/run.py --hook disagg -v 2 checkpoint_snapshot03 -s 2
(-s 2 is the scenario with row store), after about 6 minutes on my machine, I get an assert:
[1752172542:274290][5607:0xfffff7ff54c0], test_checkpoint_snapshot03.test_checkpoint_snapshot03.test_checkpoint_snapshot(row_string), file:test_checkpoint_snapshot03.wt_stable, WT_SESSION.checkpoint: [WT_VERB_DEFAULT][ERROR]: __rec_write_delta, 2488: WiredTiger assertion failed: 'checkpoint_id > multi->block_meta.checkpoint_id'. Expression returned false
Here's the traceback.
#0 0x0000fffff7d6f200 in ?? () from /lib/aarch64-linux-gnu/libc.so.6 #1 0x0000fffff7d2a67c in raise () from /lib/aarch64-linux-gnu/libc.so.6 #2 0x0000fffff7d17130 in abort () from /lib/aarch64-linux-gnu/libc.so.6 #3 0x0000fffff7302fd8 in __wt_abort (session=0xaaaaad3ac460) at /home/dda/wt/git/wt-14782-python-disagg-triage-checkpoint/src/os_common/os_abort.c:31 #4 0x0000fffff73770ec in __rec_write_delta (session=0xaaaaad3ac460, r=0xaaaab460bbc0, chunk=0xaaaab460bc28, addr=0xffffffffab58 "\340\\\255\253\252\252", addr_sizep=0xffffffffab08, compressed_sizep=0xffffffffab10) at /home/dda/wt/git/wt-14782-python-disagg-triage-checkpoint/src/reconcile/rec_write.c:2488 #5 0x0000fffff73793f4 in __rec_split_write (session=0xaaaaad3ac460, r=0xaaaab460bbc0, chunk=0xaaaab460bc28, last_block=true) at /home/dda/wt/git/wt-14782-python-disagg-triage-checkpoint/src/reconcile/rec_write.c:2851 #6 0x0000fffff7375228 in __wti_rec_split_finish (session=0xaaaaad3ac460, r=0xaaaab460bbc0) at /home/dda/wt/git/wt-14782-python-disagg-triage-checkpoint/src/reconcile/rec_write.c:1872 #7 0x0000fffff73565e4 in __wti_rec_row_int (session=0xaaaaad3ac460, r=0xaaaab460bbc0, page=0xaaaaab223a70) at /home/dda/wt/git/wt-14782-python-disagg-triage-checkpoint/src/reconcile/rec_row.c:596 #8 0x0000fffff737020c in __reconcile (session=0xaaaaad3ac460, ref=0xaaaaab3767d0, salvage=0x0, flags=132, page_lockedp=0xffffffffbc40) at /home/dda/wt/git/wt-14782-python-disagg-triage-checkpoint/src/reconcile/rec_write.c:297 #9 0x0000fffff736f358 in __wt_reconcile (session=0xaaaaad3ac460, ref=0xaaaaab3767d0, salvage=0x0, flags=132) at /home/dda/wt/git/wt-14782-python-disagg-triage-checkpoint/src/reconcile/rec_write.c:124 #10 0x0000fffff7155aa0 in __wt_sync_file (session=0xaaaaad3ac460, syncop=WT_SYNC_CHECKPOINT) at /home/dda/wt/git/wt-14782-python-disagg-triage-checkpoint/src/btree/bt_sync.c:363 #11 0x0000fffff71ad690 in __checkpoint_tree (session=0xaaaaad3ac460, is_checkpoint=true, cfg=0xffffffffd1a0) at /home/dda/wt/git/wt-14782-python-disagg-triage-checkpoint/src/checkpoint/checkpoint_txn.c:2535 #12 0x0000fffff71ade00 in __checkpoint_tree_helper (session=0xaaaaad3ac460, cfg=0xffffffffd1a0) at /home/dda/wt/git/wt-14782-python-disagg-triage-checkpoint/src/checkpoint/checkpoint_txn.c:2673 #13 0x0000fffff71a6b24 in __checkpoint_apply_to_dhandles (session=0xaaaaad3ac460, cfg=0xffffffffd1a0, op=0xfffff71add10 <__checkpoint_tree_helper>) at /home/dda/wt/git/wt-14782-python-disagg-triage-checkpoint/src/checkpoint/checkpoint_txn.c:340 #14 0x0000fffff71a9b1c in __checkpoint_db_internal (session=0xaaaaad3ac460, cfg=0xffffffffd1a0) at /home/dda/wt/git/wt-14782-python-disagg-triage-checkpoint/src/checkpoint/checkpoint_txn.c:1342 #15 0x0000fffff71ab0a0 in __checkpoint_db_wrapper (session=0xaaaaad3ac460, cfg=0xffffffffd1a0) at /home/dda/wt/git/wt-14782-python-disagg-triage-checkpoint/src/checkpoint/checkpoint_txn.c:1709 #16 0x0000fffff71ab378 in __wt_checkpoint_db (session=0xaaaaad3ac460, cfg=0xffffffffd1a0, waiting=true) at /home/dda/wt/git/wt-14782-python-disagg-triage-checkpoint/src/checkpoint/checkpoint_txn.c:1788 #17 0x0000fffff73c11e8 in __session_checkpoint (wt_session=0xaaaaad3ac460, config=0xaaaaab545610 "") at /home/dda/wt/git/wt-14782-python-disagg-triage-checkpoint/src/session/session_api.c:2289 #18 0x0000fffff75f9588 in _wrap_Session_checkpoint (self=0xfffff7791080, args=0xfffff672dcc0)
and just looking at variables from the assertion:
(gdb) p checkpoint_id $1 = 1 (gdb) p multi->block_meta.checkpoint_id $2 = 2