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

Crash in phosphor during shutdown of memcached_testapp if running single test in embedded mode

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Minor
    • 5.0.0
    • 5.0.0
    • phosphor
    • None
    • Untriaged
    • Unknown

    Description

      The example output is from a test not yet committed, but the same is true for all other tests.

      In embedded mode we run the memcached server in a separate thread which is terminated as part of shutdown. I don't care that much about the tests which starts the server multiple times (as I think we've got multiple other problems there with datastructures we're expecting being initialised by the runtime linker etc), but running tests within the same suite should work.

      These crashes just makes it annoying to run our tests in the debugger (the embedded mode was added for easing debugging of the server in the test suite).

      Example:

      /Users/trond/compile/couchbase/mobile/cmake-build-debug/memcached/memcached_testapp -e --gtest_filter=XattrTest.AddSingleXattr:XattrTest/*.AddSingleXattr:*/XattrTest.AddSingleXattr/*:*/XattrTest/*.AddSingleXattr --gtest_color=no
      Testing started at 07:40 ...
      [warn] kq_init: detected broken kqueue; not using.: No such file or directory
      [warn] kq_init: detected broken kqueue; not using.: Operation not supported on socket
      [warn] kq_init: detected broken kqueue; not using.: Operation not supported on socket
      [warn] kq_init: detected broken kqueue; not using.: Operation not supported on socket
      [warn] kq_init: detected broken kqueue; not using.: Operation not supported on socket
      [warn] kq_init: detected broken kqueue; not using.: Operation not supported on socket
      [warn] kq_init: detected broken kqueue; not using.: Operation not supported on socket
      *** Fatal error encountered during exception handling ***
      Call stack:
      	/Users/trond/compile/couchbase/mobile/cmake-build-debug/platform/libplatform_so.0.1.0.dylib(print_backtrace_to_file+0x27) [0x10887ef47]
      	/Users/trond/compile/couchbase/mobile/cmake-build-debug/memcached/memcached_testapp(_ZL27backtrace_terminate_handlerv+0xe8) [0x106eaf4c8]
      	/usr/lib/libc++abi.dylib(_ZSt11__terminatePFvvE+0x8) [0x7fffe433ed69]
      	/usr/lib/libc++abi.dylib(_ZN10__cxxabiv1L22exception_cleanup_funcE19_Unwind_Reason_CodeP17_Unwind_Exception+0) [0x7fffe433e7de]
      	/usr/lib/libc++.1.dylib(_ZNSt3__120__throw_system_errorEiPKc+0x4d) [0x7fffe430c441]
      	/Users/trond/compile/couchbase/mobile/cmake-build-debug/phosphor/libphosphor.dylib(_ZN8phosphor8TraceLog4lockEv+0x1c) [0x1088c9c4c]
      	/Users/trond/compile/couchbase/mobile/cmake-build-debug/phosphor/libphosphor.dylib(_ZN8phosphor8TraceLog16deregisterThreadEv+0x55) [0x1088c8815]
      	/Users/trond/compile/couchbase/mobile/cmake-build-debug/platform/libplatform_so.0.1.0.dylib(_ZN15CouchbaseThread3runEv+0x22b) [0x10887708b]
      	/Users/trond/compile/couchbase/mobile/cmake-build-debug/platform/libplatform_so.0.1.0.dylib(_ZL20platform_thread_wrapPv+0xdc) [0x1088759ec]
      	/usr/lib/system/libsystem_pthread.dylib(_pthread_body+0xb4) [0x7fffe5940aab]
      	/usr/lib/system/libsystem_pthread.dylib(_pthread_body+0) [0x7fffe59409f7]
      	/usr/lib/system/libsystem_pthread.dylib(thread_start+0xd) [0x7fffe5940221]
      libc++abi.dylib: terminating with uncaught exception of type std::__1::system_error: mutex lock failed: Invalid argument
      Process finished with exit code 134 (interrupted by signal 6: SIGABRT)
      

      Attachments

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

        Activity

          People

            owend Daniel Owen
            trond Trond Norbye
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes

                PagerDuty