Uploaded image for project: 'Couchbase Server'
  1. Couchbase Server
  2. MB-21408

ThreadSanitizer: Race on a Bloomfilter counter

    XMLWordPrintable

Details

    • Bug
    • Resolution: Duplicate
    • Major
    • .master
    • .master
    • None
    • None
    • Untriaged
    • Unknown

    Description

      http://cv.jenkins.couchbase.com/job/ep-engine-threadsanitizer-master/1496

      11:20:59 WARNING: ThreadSanitizer: data race (pid=89228)
      11:20:59   Write of size 8 at 0x7d140000e340 by thread T11 (mutexes: write M19480, write M20982, write M19462):
      11:20:59     #0 BloomFilter::addKey(char const*, unsigned long) /home/couchbase/jenkins/workspace/ep-engine-threadsanitizer-master/ep-engine/src/bloomfilter.cc:119 (ep.so+0x00000002643d)
      11:20:59     #1 VBucket::addToFilter(std::string const&) /home/couchbase/jenkins/workspace/ep-engine-threadsanitizer-master/ep-engine/src/vbucket.cc:546 (ep.so+0x000000150d34)
      11:20:59     #2 PersistenceCallback::callback(int&) /home/couchbase/jenkins/workspace/ep-engine-threadsanitizer-master/ep-engine/src/ep.cc:3075 (ep.so+0x0000000ac014)
      11:20:59     #3 non-virtual thunk to PersistenceCallback::callback(int&) /home/couchbase/jenkins/workspace/ep-engine-threadsanitizer-master/ep-engine/src/ep.cc:3039 (ep.so+0x0000000ad172)
      11:20:59     #4 CouchKVStore::commitCallback(std::vector<CouchRequest*, std::allocator<CouchRequest*> >&, KVStatsCtx&, couchstore_error_t) /home/couchbase/jenkins/workspace/ep-engine-threadsanitizer-master/ep-engine/src/couch-kvstore/couch-kvstore.cc:1911 (ep.so+0x000000187ed1)
      11:20:59     #5 CouchKVStore::commit2couchstore() /home/couchbase/jenkins/workspace/ep-engine-threadsanitizer-master/ep-engine/src/couch-kvstore/couch-kvstore.cc:1725 (ep.so+0x000000180ced)
      11:20:59     #6 CouchKVStore::commit() /home/couchbase/jenkins/workspace/ep-engine-threadsanitizer-master/ep-engine/src/couch-kvstore/couch-kvstore.cc:1031 (ep.so+0x0000001806d0)
      11:20:59     #7 EventuallyPersistentStore::commit(unsigned short) /home/couchbase/jenkins/workspace/ep-engine-threadsanitizer-master/ep-engine/src/ep.cc:3326 (ep.so+0x00000009e5c4)
      11:20:59     #8 EventuallyPersistentStore::flushVBucket(unsigned short) /home/couchbase/jenkins/workspace/ep-engine-threadsanitizer-master/ep-engine/src/ep.cc:3276 (ep.so+0x00000009d4ef)
      11:20:59     #9 Flusher::flushVB() /home/couchbase/jenkins/workspace/ep-engine-threadsanitizer-master/ep-engine/src/flusher.cc:293 (ep.so+0x0000000ff1ee)
      11:20:59     #10 Flusher::step(GlobalTask*) /home/couchbase/jenkins/workspace/ep-engine-threadsanitizer-master/ep-engine/src/flusher.cc:183 (ep.so+0x0000000fd8be)
      11:20:59     #11 FlusherTask::run() /home/couchbase/jenkins/workspace/ep-engine-threadsanitizer-master/ep-engine/src/tasks.cc:37 (ep.so+0x00000013fdd9)
      11:20:59     #12 ExecutorThread::run() /home/couchbase/jenkins/workspace/ep-engine-threadsanitizer-master/ep-engine/src/executorthread.cc:113 (ep.so+0x0000000f8e7f)
      11:20:59     #13 launch_executor_thread(void*) /home/couchbase/jenkins/workspace/ep-engine-threadsanitizer-master/ep-engine/src/executorthread.cc:31 (ep.so+0x0000000f89d5)
      11:20:59     #14 CouchbaseThread::run() /home/couchbase/jenkins/workspace/ep-engine-threadsanitizer-master/platform/src/cb_pthreads.cc:58 (libplatform_so.so.0.1.0+0x000000007b51)
      11:20:59     #15 platform_thread_wrap(void*) /home/couchbase/jenkins/workspace/ep-engine-threadsanitizer-master/platform/src/cb_pthreads.cc:71 (libplatform_so.so.0.1.0+0x000000005f52)
      11:20:59 
      11:20:59   Previous read of size 8 at 0x7d140000e340 by main thread (mutexes: write M15033, write M1941892737590685592):
      11:20:59     #0 BloomFilter::getNumOfKeysInFilter() /home/couchbase/jenkins/workspace/ep-engine-threadsanitizer-master/ep-engine/src/bloomfilter.cc:142 (ep.so+0x0000000265a0)
      11:20:59     #1 VBucket::addStats(bool, void (*)(char const*, unsigned short, char const*, unsigned int, void const*), void const*, item_eviction_policy_t) /home/couchbase/jenkins/workspace/ep-engine-threadsanitizer-master/ep-engine/src/vbucket.cc:661 (ep.so+0x000000151b85)
      11:20:59     #2 EventuallyPersistentEngine::doVBucketStats(void const*, void (*)(char const*, unsigned short, char const*, unsigned int, void const*), char const*, int, bool, bool)::StatVBucketVisitor::addVBStats(void const*, void (*)(char const*, unsigned short, char const*, unsigned int, void const*), RCPtr<VBucket>&, EventuallyPersistentStore*, bool, bool) /home/couchbase/jenkins/workspace/ep-engine-threadsanitizer-master/ep-engine/src/ep_engine.cc:3743 (ep.so+0x0000000bf036)
      11:20:59     #3 EventuallyPersistentEngine::doVBucketStats(void const*, void (*)(char const*, unsigned short, char const*, unsigned int, void const*), char const*, int, bool, bool) /home/couchbase/jenkins/workspace/ep-engine-threadsanitizer-master/ep-engine/src/ep_engine.cc:3767 (ep.so+0x0000000bec8a)
      11:20:59     #4 EventuallyPersistentEngine::getStats(void const*, char const*, int, void (*)(char const*, unsigned short, char const*, unsigned int, void const*)) /home/couchbase/jenkins/workspace/ep-engine-threadsanitizer-master/ep-engine/src/ep_engine.cc:4673 (ep.so+0x0000000c42b3)
      11:20:59     #5 EvpGetStats(engine_interface*, void const*, char const*, int, void (*)(char const*, unsigned short, char const*, unsigned int, void const*)) /home/couchbase/jenkins/workspace/ep-engine-threadsanitizer-master/ep-engine/src/ep_engine.cc:229 (ep.so+0x0000000b34ce)
      

      Attachments

        For Gerrit Dashboard: MB-21408
        # Subject Branch Project Status CR V

        Activity

          People

            manu Manu Dhundi (Inactive)
            manu Manu Dhundi (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes

                PagerDuty