Summary:
If the oldest (or only), skipped updates on a page being reconciled with lookaside writes are prepared, the WT_PAGE_LOOKASID.min_skipped_ts field is never set, leading to the wrong value being returned because lookaside records for the page will be incorrectly skipped.
This is another snapshot-isolation search mismatch failure, post the recent merging of WT-5169. This time the mismatch was about the expected content being found deleted. And the page dump segfaulted which is kind of expected as there's no lock applied while attempting to access the page.
http://build.wiredtiger.com:8080/job/wiredtiger-test-format-stress/72142/
++ nice catchsegv ./t -1 -c ../../../test/format/CONFIG.stress snapshot-isolation 789234 search mismatch expected {0000789234/LMNOPQRSTUV} found {deleted} snapshot-isolation error: Dumping page to RUNDIR/pagedump Segmentation fault (core dumped) *** Segmentation fault (...) Backtrace: /mnt/data0/jenkins/workspace/wiredtiger-test-format-stress/build_posix/../src/btree/bt_debug.c:805(__debug_page_metadata)[0x41953c] /mnt/data0/jenkins/workspace/wiredtiger-test-format-stress/build_posix/../src/btree/bt_debug.c:758 (discriminator 3)(__debug_page)[0x4192e3] /mnt/data0/jenkins/workspace/wiredtiger-test-format-stress/build_posix/../src/btree/bt_debug.c:678(__wt_debug_page)[0x419085] /mnt/data0/jenkins/workspace/wiredtiger-test-format-stress/build_posix/../src/btree/bt_debug.c:698(__wt_debug_cursor_page)[0x41912a] /mnt/data0/jenkins/workspace/wiredtiger-test-format-stress/build_posix/test/format/../../../test/format/snap.c:241(snap_verify)[0x40e103] /mnt/data0/jenkins/workspace/wiredtiger-test-format-stress/build_posix/test/format/../../../test/format/snap.c:407(snap_repeat_txn)[0x40e5ce] /mnt/data0/jenkins/workspace/wiredtiger-test-format-stress/build_posix/test/format/../../../test/format/ops.c:946(ops)[0x409af2] /lib/x86_64-linux-gnu/libpthread.so.0(+0x76db)[0x7f86a8d096db] /lib/x86_64-linux-gnu/libc.so.6(clone+0x3f)[0x7f86a83f188f]
The configuration:
############################################ # RUN PARAMETERS ############################################ abort=0 alter=1 assert_commit_timestamp=0 assert_read_timestamp=0 auto_throttle=1 backups=0 bitcnt=4 bloom=1 bloom_bit_count=46 bloom_hash_count=22 bloom_oldest=0 cache=94 cache_minimum=20 checkpoints=on checkpoint_log_size=144 checkpoint_wait=42 checksum=uncompressed chunk_size=7 compaction=0 compression=zlib data_extend=0 data_source=table delete_pct=8 dictionary=0 direct_io=0 encryption=rotn-7 evict_max=4 file_type=variable-length column-store firstfit=0 huffman_key=0 huffman_value=0 independent_thread_rng=1 in_memory=0 insert_pct=38 internal_key_truncation=1 internal_page_max=13 isolation=snapshot key_gap=20 key_max=65 key_min=20 leaf_page_max=16 leak_memory=0 logging=0 logging_archive=1 logging_compression=none logging_file_max=499130 logging_prealloc=0 long_running_txn=0 lsm_worker_threads=4 memory_page_max=3 merge_max=13 mmap=1 modify_pct=8 ops=0 prefix_compression=1 prefix_compression_min=7 prepare=1 quiet=1 random_cursor=0 read_pct=35 rebalance=1 repeat_data_pct=83 reverse=0 rows=1000000 runs=1 salvage=1 split_pct=60 statistics=0 statistics_server=0 threads=15 timer=4 timing_stress_aggressive_sweep=0 timing_stress_checkpoint=0 timing_stress_lookaside_sweep=0 timing_stress_split_1=0 timing_stress_split_2=0 timing_stress_split_3=0 timing_stress_split_4=0 timing_stress_split_5=0 timing_stress_split_6=0 timing_stress_split_7=0 timing_stress_split_8=0 transaction_timestamps=1 transaction-frequency=100 truncate=1 value_max=443 value_min=9 verify=1 wiredtiger_config= write_pct=11 ############################################
- is caused by
-
WT-4961 Checkpoints with cache overflow must keep history for reads
- Closed