Uploaded image for project: 'Couchbase Lite'
  1. Couchbase Lite
  2. CBL-2692

Closing db with active live query causes crash

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Blocker
    • 3.1.0
    • 3.0
    • LiteCore
    • Security Level: Public
    • None

    Description

      QE can reproduce on Android (Java) and C so far. Backtrace from C 3.0.0-177:

      #0  0x0000000000000000 in ?? ()
      #1  0x00007f143c77d0e2 in litecore::LiveQuerier::_runQuery (this=0x7f142801a3d0, options=...)
          at /home/couchbase/jenkins/workspace/couchbase-lite-c-debian9/couchbase-lite-c/vendor/couchbase-lite-core/LiteCore/Database/LiveQuerier.cc:192
      #2  0x00007f143c77d731 in std::__invoke_impl<void, void (litecore::LiveQuerier::*&)(litecore::Query::Options), litecore::LiveQuerier*&, litecore::Query::Options&> (
          __t=<optimized out>, __f=<optimized out>) at /usr/include/c++/8/bits/invoke.h:89
      #3  std::__invoke<void (litecore::LiveQuerier::*&)(litecore::Query::Options), litecore::LiveQuerier*&, litecore::Query::Options&> (__fn=<optimized out>)
          at /usr/include/c++/8/bits/invoke.h:95
      #4  std::_Bind<void (litecore::LiveQuerier::*(litecore::LiveQuerier*, litecore::Query::Options))(litecore::Query::Options)>::__call<void, , 0ul, 1ul>(std::tuple<>&&, std::_Index_tuple<0ul, 1ul>) (__args=<optimized out>, this=<optimized out>) at /usr/include/c++/8/functional:400
      #5  std::_Bind<void (litecore::LiveQuerier::*(litecore::LiveQuerier*, litecore::Query::Options))(litecore::Query::Options)>::operator()<, void>() (
          this=<optimized out>) at /usr/include/c++/8/functional:484
      #6  std::_Function_handler<void (), std::_Bind<void (litecore::LiveQuerier::*(litecore::LiveQuerier*, litecore::Query::Options))(litecore::Query::Options)> >::_M_invoke(std::_Any_data const&) (__functor=...) at /usr/include/c++/8/bits/std_function.h:297
      #7  0x00007f143c832642 in litecore::actor::ThreadedMailbox::safelyCall(std::function<void ()> const&) const (this=0x7f142801a3f8, f=...)
          at /home/couchbase/jenkins/workspace/couchbase-lite-c-debian9/couchbase-lite-c/vendor/couchbase-lite-core/LiteCore/Support/ThreadedMailbox.cc:217
      #8  0x00007f143c832687 in litecore::actor::ThreadedMailbox::<lambda()>::operator() (__closure=0x7f1428047f60)
          at /home/couchbase/jenkins/workspace/couchbase-lite-c-debian9/couchbase-lite-c/vendor/couchbase-lite-core/LiteCore/Support/ThreadedMailbox.cc:159
      #9  std::_Function_handler<void(), litecore::actor::ThreadedMailbox::enqueue(char const*, const std::function<void()>&)::<lambda()> >::_M_invoke(const std::_Any_data &) (__functor=...) at /usr/include/c++/8/bits/std_function.h:297
      #10 0x00007f143c832801 in litecore::actor::ThreadedMailbox::performNextMessage (this=this@entry=0x7f142801a3f8)
          at /home/couchbase/jenkins/workspace/couchbase-lite-c-debian9/couchbase-lite-c/vendor/couchbase-lite-core/LiteCore/Support/ThreadedMailbox.cc:256
      #11 0x00007f143c8328f6 in litecore::actor::Scheduler::task (this=0x7f14240881c0, taskID=1)
          at /home/couchbase/jenkins/workspace/couchbase-lite-c-debian9/couchbase-lite-c/vendor/couchbase-lite-core/LiteCore/Support/ThreadedMailbox.cc:107
      #12 0x00007f143c96727f in execute_native_thread_routine () from /home/vagrant/ctestserver/libcblite.so.3
      #13 0x00007f143c4d34a4 in start_thread (arg=0x7f1438888700) at pthread_create.c:456
      #14 0x00007f1439840d0f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97
      

      Attachments

        Issue Links

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

          Activity

            People

              pasin Pasin Suriyentrakorn
              pasin Pasin Suriyentrakorn
              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