Uploaded image for project: 'Couchbase node.js Client Library'
  1. Couchbase node.js Client Library
  2. JSCBC-1105

N1QL query with 'undefined' property in args crashes node.js process

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Major
    • 4.2.0
    • 4.1.2
    • library
    • macOS 12.6, Intel MacBook Pro, 16GB RAM
      node.js v18.9.1
    • 1

    Description

      I have a project using node.js that uses the CB SDK to make N1QL queries. Recently queries have started to crash the node.js process, with an uncaught C++ exception. I attached LLDB to get a backtrace, and it appears to be Couchbase code responsible.

      libc++abi: terminating with uncaught exception of type tao::pegtl::parse_error: tao::json::events::from_string:1:1: no valid JSON
      Process 72959 stopped
      * thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
          frame #0: 0x00007ff80256e00e libsystem_kernel.dylib`__pthread_kill + 10
      libsystem_kernel.dylib`:
      ->  0x7ff80256e00e <+10>: jae    0x7ff80256e018            ; <+20>
          0x7ff80256e010 <+12>: movq   %rax, %rdi
          0x7ff80256e013 <+15>: jmp    0x7ff8025681c5            ; cerror_nocancel
          0x7ff80256e018 <+20>: retq   
      Target 0: (node) stopped.
      (lldb) bt
      * thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
        * frame #0: 0x00007ff80256e00e libsystem_kernel.dylib`__pthread_kill + 10
          frame #1: 0x00007ff8025a41ff libsystem_pthread.dylib`pthread_kill + 263
          frame #2: 0x00007ff8024efd24 libsystem_c.dylib`abort + 123
          frame #3: 0x00007ff802560082 libc++abi.dylib`abort_message + 241
          frame #4: 0x00007ff8025511a5 libc++abi.dylib`demangling_terminate_handler() + 242
          frame #5: 0x00007ff80244de19 libobjc.A.dylib`_objc_terminate() + 104
          frame #6: 0x00007ff80255f4a7 libc++abi.dylib`std::__terminate(void (*)()) + 8
          frame #7: 0x00007ff80255f458 libc++abi.dylib`std::terminate() + 56
          frame #8: 0x0000000112129d3b couchbase_impl.node`__clang_call_terminate + 11
          frame #9: 0x0000000112137e28 couchbase_impl.node`napi_value__* Napi::details::TemplatedInstanceCallback<couchnode::Connection, &(couchnode::Connection::jsQuery(Napi::CallbackInfo const&))>(napi_env__*, napi_callback_info__*) + 328
          frame #10: 0x00000001001eb3f3 node`v8impl::(anonymous namespace)::FunctionCallbackWrapper::Invoke(v8::FunctionCallbackInfo<v8::Value> const&) + 109
          frame #11: 0x00000001003e42bf node`v8::internal::FunctionCallbackArguments::Call(v8::internal::CallHandlerInfo) + 217
          frame #12: 0x00000001003e40a5 node`v8::internal::MaybeHandle<v8::internal::Object> v8::internal::(anonymous namespace)::HandleApiCallHelper<false>(v8::internal::Isolate*, v8::internal::Handle<v8::internal::HeapObject>, v8::internal::Handle<v8::internal::HeapObject>, v8::internal::Handle<v8::internal::FunctionTemplateInfo>, v8::internal::Handle<v8::internal::Object>, v8::internal::BuiltinArguments) + 529
          frame #13: 0x00000001003e3b2d node`v8::internal::Builtin_HandleApiCall(int, unsigned long*, v8::internal::Isolate*) + 256
      

      Attachments

        For Gerrit Dashboard: JSCBC-1105
        # Subject Branch Project Status CR V

        Activity

          People

            jared.casey Jared Casey
            jens Jens Alfke
            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