Uploaded image for project: 'WiredTiger'
  1. WiredTiger
  2. WT-3638

format failure, update list without complete visible record

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 3.6.0-rc0, WT3.0.0
    • Affects Version/s: None
    • Component/s: None
    • None
    • Storage 2017-10-23

      format failure, update list without complete visible record

      http://build.wiredtiger.com:8080/job/wiredtiger-test-format-stress/57542/console

      What's happening here is we're walking a row-store leaf page insert list and __rec_txn_read returns a WT_UPDATE record of type "modify" to write on-page for the reconciliation. When that happens we have to walk the WT_UPDATE list to find the record(s) on which the modify record should be based.

      The problem is that we don't find a complete (that is, a "standard" or a "deleted" type WT_UPDATE record), that's visible and on which we could base the modify record. In other cases, that would be OK because it would mean the modify record would be based on the on-page value, but this is an insert list, so that's not possible.

      It's a row-store failure, and timestamps are not configured.

      Backtrace:
      /lib64/libc.so.6(gsignal+0x37)[0x7f120ad261d7]
      /lib64/libc.so.6(abort+0x148)[0x7f120ad278c8]
      /mnt/data0/jenkins/workspace/wiredtiger-test-format-stress/build_posix/../src/os_common/os_strtouq.c:18(__wt_strtouq)[0x52fcb8]
      /mnt/data0/jenkins/workspace/wiredtiger-test-format-stress/build_posix/../src/support/err.c:514(__wt_panic)[0x47cd99]
      /mnt/data0/jenkins/workspace/wiredtiger-test-format-stress/build_posix/../src/btree/bt_ret.c:216(__value_return_upd)[0x4be86a]
      /mnt/data0/jenkins/workspace/wiredtiger-test-format-stress/build_posix/../src/btree/bt_ret.c:276(__wt_value_return)[0x4bea96]
      /mnt/data0/jenkins/workspace/wiredtiger-test-format-stress/build_posix/../src/reconcile/rec_write.c:5673(__rec_row_leaf_insert)[0x460e4b]
      /mnt/data0/jenkins/workspace/wiredtiger-test-format-stress/build_posix/../src/reconcile/rec_write.c:5602(__rec_row_leaf)[0x460c56]
      /mnt/data0/jenkins/workspace/wiredtiger-test-format-stress/build_posix/../src/reconcile/rec_write.c:442(__wt_reconcile)[0x456106]
      /mnt/data0/jenkins/workspace/wiredtiger-test-format-stress/build_posix/../src/evict/evict_page.c:587(__evict_review)[0x4349f3]
      /mnt/data0/jenkins/workspace/wiredtiger-test-format-stress/build_posix/../src/evict/evict_page.c:146(__wt_evict)[0x433a7b]
      /mnt/data0/jenkins/workspace/wiredtiger-test-format-stress/build_posix/../src/evict/evict_lru.c:2242(__evict_page)[0x4319e2]
      /mnt/data0/jenkins/workspace/wiredtiger-test-format-stress/build_posix/../src/evict/evict_lru.c:2340(__wt_cache_eviction_worker)[0x431d5b]
      /mnt/data0/jenkins/workspace/wiredtiger-test-format-stress/build_posix/../src/include/cache.i:399(__wt_cache_eviction_check)[0x547644]
      /mnt/data0/jenkins/workspace/wiredtiger-test-format-stress/build_posix/../src/include/txn.i:566(__wt_txn_idle_cache_check)[0x547d78]
      /mnt/data0/jenkins/workspace/wiredtiger-test-format-stress/build_posix/../src/include/cursor.i:338(__cursor_func_init)[0x54909b]
      /mnt/data0/jenkins/workspace/wiredtiger-test-format-stress/build_posix/../src/btree/bt_cursor.c:477(__wt_btcur_search)[0x549e3f]
      /mnt/data0/jenkins/workspace/wiredtiger-test-format-stress/build_posix/../src/cursor/cur_file.c:187(__curfile_search)[0x4f7d1f]
      /mnt/data0/jenkins/workspace/wiredtiger-test-format-stress/build_posix/test/format/../../../test/format/ops.c:1692(row_remove)[0x40a0fd]
      /mnt/data0/jenkins/workspace/wiredtiger-test-format-stress/build_posix/test/format/../../../test/format/ops.c:802(ops)[0x4084e4]
      /lib64/libpthread.so.0(+0x7dc5)[0x7f120b6ecdc5]
      

      Here's the CONFIG:

      ############################################
      #  RUN PARAMETERS
      ############################################
      abort=0
      alter=0
      auto_throttle=1
      backups=1
      bitcnt=1
      bloom=1
      bloom_bit_count=38
      bloom_hash_count=27
      bloom_oldest=0
      cache=31
      checkpoints=1
      checksum=uncompressed
      chunk_size=7
      compaction=1
      compression=zlib
      data_extend=0
      data_source=file
      delete_pct=14
      dictionary=0
      direct_io=0
      encryption=none
      evict_max=5
      file_type=row-store
      firstfit=0
      huffman_key=0
      huffman_value=0
      independent_thread_rng=1
      in_memory=0
      insert_pct=28
      internal_key_truncation=1
      internal_page_max=9
      isolation=read-committed
      key_gap=8
      key_max=256
      key_min=256
      leaf_page_max=9
      leak_memory=0
      logging=1
      logging_archive=1
      logging_compression=lz4
      logging_prealloc=1
      long_running_txn=0
      lsm_worker_threads=3
      merge_max=12
      mmap=1
      modify_pct=31
      ops=100000
      prefix_compression=1
      prefix_compression_min=3
      quiet=1
      read_pct=7
      rebalance=1
      repeat_data_pct=19
      reverse=0
      rows=100000
      runs=1
      salvage=1
      split_pct=68
      statistics=0
      statistics_server=0
      threads=19
      timer=360
      transaction_timestamps=0
      transaction-frequency=33
      value_max=4044
      value_min=256
      verify=1
      wiredtiger_config=
      write_pct=20
      ############################################
      

            Assignee:
            michael.cahill@mongodb.com Michael Cahill (Inactive)
            Reporter:
            keith.bostic@mongodb.com Keith Bostic (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: