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

LSM bug: Failed lookup in bloom filter.

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

      While debugging WT-3199, I noticed a periodic failure:

      WT_CURSOR.search: Failed lookup in bloom filter: WT_ROLLBACK:
      conflict between concurrent operations
      

      Reproduces with this format configuration:

      ############################################
      #  RUN PARAMETERS
      ############################################
      abort=0
      alter=0
      auto_throttle=0
      backups=0
      bitcnt=8
      bloom=1
      bloom_bit_count=17
      bloom_hash_count=13
      bloom_oldest=0
      cache=60
      checkpoints=1
      checksum=uncompressed
      chunk_size=2
      compaction=0
      compression=snappy
      data_extend=0
      data_source=lsm
      delete_pct=9
      dictionary=1
      direct_io=0
      encryption=none
      evict_max=4
      file_type=row-store
      firstfit=0
      huffman_key=0
      huffman_value=0
      in_memory=0
      insert_pct=28
      internal_key_truncation=1
      internal_page_max=11
      isolation=random
      key_gap=18
      key_max=122
      key_min=21
      leaf_page_max=12
      leak_memory=0
      logging=1
      logging_archive=0
      logging_compression=snappy
      logging_prealloc=0
      long_running_txn=0
      lsm_worker_threads=4
      merge_max=4
      mmap=1
      ops=100000
      prefix_compression=0
      prefix_compression_min=1
      read_pct=6
      rebalance=1
      repeat_data_pct=32
      reverse=0
      rows=100000
      runs=100
      salvage=1
      split_pct=65
      statistics=1
      statistics_server=0
      threads=22
      timer=20
      transaction-frequency=55
      value_max=3051
      value_min=1
      verify=1
      wiredtiger_config=
      write_pct=57
      rebalance=1
      ############################################
      

      alexander.gorrod and michael.cahill commented:

      > That's a bug. It means that the bloom filter and contents of the table it filters are out of sync
      > Could we get that rollback because of a cache full condition?
      > Yes - that’s possible (and a bit horrible). I’d be reluctant to completely remove the error message from that path, though I guess we could only log an error if WT_NOTFOUND is returned - that’s the surprising failure mode.

            Assignee:
            neha.khatri Neha Khatri
            Reporter:
            keith.bostic@mongodb.com Keith Bostic (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved: