-
Type: Bug
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
When tiered storage is configured and in_memory is also configured, a flush_tier call will crash:
#0 0x00007ffff7a22f47 in raise () from /lib/x86_64-linux-gnu/libc.so.6 #1 0x00007ffff7a248b1 in abort () from /lib/x86_64-linux-gnu/libc.so.6 #2 0x00007ffff4774858 in __wt_abort (session=0x555555b02098) at ../src/os_common/os_abort.c:30 #3 0x00007ffff47b3d59 in __rec_write (session=0x555555b02098, buf=0x555555b5ccb0, addr=0x7fffffffab50 "P\334\265UUU", addr_sizep=0x7fffffffab28, compressed_sizep=0x7fffffffab30, checkpoint=false, checkpoint_io=true, compressed=false) at ../src/reconcile/rec_write.c:824 #4 0x00007ffff47b73b5 in __rec_split_write (session=0x555555b02098, r=0x555555b5cb60, chunk=0x555555b5cbc8, compressed_image=0x0, last_block=true) at ../src/reconcile/rec_write.c:2169 #5 0x00007ffff47b610f in __wt_rec_split_finish (session=0x555555b02098, r=0x555555b5cb60) at ../src/reconcile/rec_write.c:1706 #6 0x00007ffff47a39ba in __wt_rec_row_leaf (session=0x555555b02098, r=0x555555b5cb60, pageref=0x555555a7c3a0, salvage=0x0) at ../src/reconcile/rec_row.c:996 #7 0x00007ffff47b27df in __reconcile (session=0x555555b02098, ref=0x555555a7c3a0, salvage=0x0, flags=4, page_lockedp=0x7fffffffaf60) at ../src/reconcile/rec_write.c:258 #8 0x00007ffff47b1d74 in __wt_reconcile (session=0x555555b02098, ref=0x555555a7c3a0, salvage=0x0, flags=4) at ../src/reconcile/rec_write.c:98 #9 0x00007ffff464aa3b in __wt_sync_file (session=0x555555b02098, syncop=WT_SYNC_CHECKPOINT) at ../src/btree/bt_sync.c:629 #10 0x00007ffff48286d1 in __checkpoint_tree (session=0x555555b02098, is_checkpoint=true, cfg=0x7fffffffb3e0) at ../src/txn/txn_ckpt.c:2089 #11 0x00007ffff4828cdc in __wt_checkpoint (session=0x555555b02098, cfg=0x7fffffffb3e0) at ../src/txn/txn_ckpt.c:2259 #12 0x00007ffff4825a36 in __txn_checkpoint (session=0x555555b02098, cfg=0x7fffffffb3e0) at ../src/txn/txn_ckpt.c:1148 #13 0x00007ffff482631e in __txn_checkpoint_wrapper (session=0x555555b02098, cfg=0x7fffffffb3e0) at ../src/txn/txn_ckpt.c:1289 #14 0x00007ffff48264c4 in __wt_txn_checkpoint (session=0x555555b02098, cfg=0x7fffffffb3e0, waiting=true) at ../src/txn/txn_ckpt.c:1352 #15 0x00007ffff46a0388 in __wt_flush_tier (session=0x555555b02098, config=0x0) at ../src/conn/conn_tiered.c:564 #16 0x00007ffff47e8554 in __session_flush_tier (wt_session=0x555555b02098, config=0x0) at ../src/session/session_api.c:2014
We should probably just catch this at wiredtiger_open, and disallow the tiered storage option to be used with in_memory configuration. Tiered storage, as currently designed, needs some local file backing.