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

[ThreadSanitizer] Lock inversion / Dead lock scenario seen in circular block reuse code path

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Major
    • 4.5.0
    • 4.5.0
    • forestdb
    • None
    • Untriaged
    • Unknown
    • ForestDB: Oct 17 - Nov 4

    Description

      11:38:55 WARNING: ThreadSanitizer: lock-order-inversion (potential deadlock) (pid=121717)
      11:38:55   Cycle in lock order graph: M10074 (0x7d64008c8b30) => M9430 (0x7d0c00bd5c00) => M10074
      11:38:55 
      11:38:55   Mutex M9430 acquired here while holding mutex M10074 in thread T66:
      11:38:55     #0 pthread_spin_lock <null> (e2etest+0x000000466ac0)
      11:38:55     #1 fdb_get_smallest_active_header /home/couchbase/jenkins/workspace/forestdb-threadsanitizer-master/forestdb/src/kv_instance.cc:2527 (e2etest+0x00000052723b)
      11:38:55     #2 sb_reclaim_reusable_blocks /home/couchbase/jenkins/workspace/forestdb-threadsanitizer-master/forestdb/src/superblock.cc:542 (e2etest+0x00000052abcf)
      11:38:55     #3 _fdb_commit /home/couchbase/jenkins/workspace/forestdb-threadsanitizer-master/forestdb/src/forestdb.cc:4178 (e2etest+0x0000004fed58)
      11:38:55     #4 fdb_commit /home/couchbase/jenkins/workspace/forestdb-threadsanitizer-master/forestdb/src/forestdb.cc:4013 (e2etest+0x00000050409f)
      11:38:55     #5 e2e_fdb_commit crtstuff.c (e2etest+0x0000004d09b6)
      11:38:55     #6 seq_writer_thread(void*) crtstuff.c (e2etest+0x0000004c9c81)
      11:38:55 
      11:38:55   Mutex M10074 previously acquired by the same thread here:
      11:38:55     #0 pthread_spin_lock <null> (e2etest+0x000000466ac0)
      11:38:55     #1 fdb_get_smallest_active_header /home/couchbase/jenkins/workspace/forestdb-threadsanitizer-master/forestdb/src/kv_instance.cc:2518 (e2etest+0x0000005271da)
      11:38:55     #2 sb_reclaim_reusable_blocks /home/couchbase/jenkins/workspace/forestdb-threadsanitizer-master/forestdb/src/superblock.cc:542 (e2etest+0x00000052abcf)
      11:38:55     #3 _fdb_commit /home/couchbase/jenkins/workspace/forestdb-threadsanitizer-master/forestdb/src/forestdb.cc:4178 (e2etest+0x0000004fed58)
      11:38:55     #4 fdb_commit /home/couchbase/jenkins/workspace/forestdb-threadsanitizer-master/forestdb/src/forestdb.cc:4013 (e2etest+0x00000050409f)
      11:38:55     #5 e2e_fdb_commit crtstuff.c (e2etest+0x0000004d09b6)
      11:38:55     #6 seq_writer_thread(void*) crtstuff.c (e2etest+0x0000004c9c81)
      11:38:55 
      11:38:55   Mutex M10074 acquired here while holding mutex M9430 in main thread:
      11:38:55     #0 pthread_spin_lock <null> (e2etest+0x000000466ac0)
      11:38:55     #1 filemgr_free_func /home/couchbase/jenkins/workspace/forestdb-threadsanitizer-master/forestdb/src/filemgr.cc:1647 (e2etest+0x0000004f009f)
      11:38:55     #2 filemgr_close /home/couchbase/jenkins/workspace/forestdb-threadsanitizer-master/forestdb/src/filemgr.cc:1479 (e2etest+0x0000004f2594)
      11:38:55     #3 _fdb_close /home/couchbase/jenkins/workspace/forestdb-threadsanitizer-master/forestdb/src/forestdb.cc:7203 (e2etest+0x0000004ffaab)
      11:38:55     #4 fdb_kvs_close_all /home/couchbase/jenkins/workspace/forestdb-threadsanitizer-master/forestdb/src/kv_instance.cc:1789 (e2etest+0x000000525012)
      11:38:55     #5 _fdb_close_root /home/couchbase/jenkins/workspace/forestdb-threadsanitizer-master/forestdb/src/forestdb.cc:7157 (e2etest+0x0000004feec3)
      11:38:55     #6 fdb_close /home/couchbase/jenkins/workspace/forestdb-threadsanitizer-master/forestdb/src/forestdb.cc:7135 (e2etest+0x00000050c54a)
      11:38:55     #7 e2e_fdb_close crtstuff.c (e2etest+0x0000004cfded)
      11:38:55     #8 e2e_concurrent_reader_writer(bool) crtstuff.c (e2etest+0x0000004ccce1)
      11:38:55     #9 main crtstuff.c (e2etest+0x0000004ce944)
      11:38:55 
      11:38:55   Mutex M9430 previously acquired by the same thread here:
      11:38:55     #0 pthread_spin_lock <null> (e2etest+0x000000466ac0)
      11:38:55     #1 fdb_kvs_close_all /home/couchbase/jenkins/workspace/forestdb-threadsanitizer-master/forestdb/src/kv_instance.cc:1784 (e2etest+0x000000524fad)
      11:38:55     #2 _fdb_close_root /home/couchbase/jenkins/workspace/forestdb-threadsanitizer-master/forestdb/src/forestdb.cc:7157 (e2etest+0x0000004feec3)
      11:38:55     #3 fdb_close /home/couchbase/jenkins/workspace/forestdb-threadsanitizer-master/forestdb/src/forestdb.cc:7135 (e2etest+0x00000050c54a)
      11:38:55     #4 e2e_fdb_close crtstuff.c (e2etest+0x0000004cfded)
      11:38:55     #5 e2e_concurrent_reader_writer(bool) crtstuff.c (e2etest+0x0000004ccce1)
      11:38:55     #6 main crtstuff.c (e2etest+0x0000004ce944)
      11:38:55 
      11:38:55   Thread T14 (tid=121947, finished) created by main thread at:
      11:38:55     #0 pthread_create <null> (e2etest+0x000000464c41)
      11:38:55     #1 e2e_concurrent_reader_writer(bool) crtstuff.c (e2etest+0x0000004ccbba)
      11:38:55     #2 main crtstuff.c (e2etest+0x0000004ce944)
      

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            jung-sang Jung-Sang Ahn (Inactive)
            abhinav Abhi Dangeti
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes

                PagerDuty