We have seen an automated test failure where it looks like we are freeing a ref that should not have been freed. We can't see a code path where that could happen, so have added additional diagnostic information to hopefully be able to root cause if it happens again.
test/format triggered a segfault while doing stress overflow testing, specifically, below line of execution:
eval $CMD file_type=row leaf_page_max=9 internal_page_max=9 key_min=256 value_min=256 || cleanup
Jenkins run:
http://build.wiredtiger.com:8080/job/wiredtiger-test-format-stress-ppc/18538
Stack trace:
Backtrace: /lib64/libSegFault.so(+0x1734)[0x3fff883d1734] ??:0(??)[0x3fff88400478] /home/jenkins/jenkins/workspace/wiredtiger-test-format-stress-ppc/build_posix/../src/include/cell.i:769(__cell_data_ref)[0x101593dc] ??:0(??)[0x3fff541885e0] /home/jenkins/jenkins/workspace/wiredtiger-test-format-stress-ppc/build_posix/../src/include/cell.i:737(__wt_cell_unpack)[0x102071d4] /home/jenkins/jenkins/workspace/wiredtiger-test-format-stress-ppc/build_posix/../src/include/btree.i:1051(__wt_row_leaf_value_cell)[0x10208b3c] /home/jenkins/jenkins/workspace/wiredtiger-test-format-stress-ppc/build_posix/../src/include/cursor.i:468(__cursor_row_slot_return)[0x1020abd4] /home/jenkins/jenkins/workspace/wiredtiger-test-format-stress-ppc/build_posix/../src/btree/bt_curprev.c:523(__cursor_row_prev)[0x1020c200] /home/jenkins/jenkins/workspace/wiredtiger-test-format-stress-ppc/build_posix/../src/btree/bt_curprev.c:627(__wt_btcur_prev)[0x1020c724] /home/jenkins/jenkins/workspace/wiredtiger-test-format-stress-ppc/build_posix/../src/cursor/cur_file.c:147(__curfile_prev)[0x10188c74] /home/jenkins/jenkins/workspace/wiredtiger-test-format-stress-ppc/build_posix/test/format/../../../test/format/ops.c:1343 (discriminator 2)(nextprev)[0x1000edb8] /home/jenkins/jenkins/workspace/wiredtiger-test-format-stress-ppc/build_posix/test/format/../../../test/format/ops.c:1085(ops)[0x1000df6c] /lib64/power8/libpthread.so.0(+0x8944)[0x3fff88328944] /lib64/power8/libc.so.6(clone+0x98)[0x3fff881a7640]
The configuration:
############################################ # RUN PARAMETERS ############################################ abort=0 alter=0 auto_throttle=1 backups=0 bitcnt=2 bloom=1 bloom_bit_count=4 bloom_hash_count=21 bloom_oldest=1 cache=68 cache_minimum=20 checkpoints=on checkpoint_log_size=155 checkpoint_wait=52 checksum=uncompressed chunk_size=1 compaction=0 compression=snappy data_extend=0 data_source=table delete_pct=13 dictionary=0 direct_io=0 encryption=rotn-7 evict_max=5 file_type=row-store firstfit=0 huffman_key=0 huffman_value=0 independent_thread_rng=1 in_memory=0 insert_pct=34 internal_key_truncation=0 internal_page_max=9 isolation=random key_gap=1 key_max=256 key_min=256 leaf_page_max=9 leak_memory=0 logging=0 logging_archive=1 logging_compression=none logging_file_max=44452 logging_prealloc=1 long_running_txn=0 lsm_worker_threads=4 merge_max=13 mmap=0 modify_pct=22 ops=0 prefix_compression=1 prefix_compression_min=8 prepare=0 quiet=1 read_pct=0 rebalance=1 repeat_data_pct=44 reverse=0 rows=1000000 runs=1 salvage=1 split_pct=75 statistics=1 statistics_server=0 threads=9 timer=4 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 timing_stress_split_9=0 transaction_timestamps=0 transaction-frequency=19 truncate=1 value_max=2497 value_min=256 verify=1 wiredtiger_config= write_pct=31 ############################################