Details
-
Bug
-
Resolution: Fixed
-
Critical
-
1.0.0-beta
-
None
-
1
Description
From the log it looks like the config from the cluster_map_change_notification (which had no bucket) was used to execute the upsert
I think this logic https://github.com/couchbaselabs/couchbase-cxx-client/blob/dd91c5bfe49953184db050db03fa181df257a281/couchbase/io/mcbp_session.hxx#L378 doesn't account for the config being sent before our select bucket has been processed by the server
11:33:48 Thread 1 (Thread 0x7f14f3fff700 (LWP 27786)):
|
11:33:48 #0 0x00007f14fc53c37f in raise () from /lib64/libc.so.6
|
11:33:48 #1 0x00007f14fc526db5 in abort () from /lib64/libc.so.6
|
11:33:48 #2 0x00007f14fcef409b in __gnu_cxx::__verbose_terminate_handler() [clone .cold.1] () from /lib64/libstdc++.so.6
|
11:33:48 #3 0x00007f14fcefa53c in __cxxabiv1::__terminate(void (*)()) () from /lib64/libstdc++.so.6
|
11:33:48 #4 0x00007f14fcefa597 in std::terminate() () from /lib64/libstdc++.so.6
|
11:33:48 #5 0x00007f14fcefa7f8 in __cxa_throw () from /lib64/libstdc++.so.6
|
11:33:48 #6 0x0000000000ed4cb2 in couchbase::topology::configuration::map_key (this=0x7f14ec00a6e8, key="0") at /home/couchbase/jenkins/workspace/c-cpp/cxx/centos-cxx-sdk-server-situational-tests/couchbase-cxx-client/couchbase/topology/configuration.cxx:202
|
11:33:49 #7 0x0000000000dc4e51 in couchbase::bucket::map_and_send<couchbase::operations::upsert_request> (this=0x7f14ec00a450, cmd=std::shared_ptr<couchbase::operations::mcbp_command<couchbase::bucket, couchbase::operations::upsert_request>> (use count 4, weak count 1) = {...}) at /home/couchbase/jenkins/workspace/c-cpp/cxx/centos-cxx-sdk-server-situational-tests/couchbase-cxx-client/couchbase/bucket.hxx:375
|
11:33:49 #8 0x0000000000dbb398 in couchbase::bucket::execute<couchbase::operations::upsert_request, CBSdkd::Handle::execute_async_ec<couchbase::operations::upsert_request>(couchbase::operations::upsert_request)::{lambda(couchbase::operations::upsert_response)#1}>(couchbase::operations::upsert_request, CBSdkd::Handle::execute_async_ec<couchbase::operations::upsert_request>(couchbase::operations::upsert_request)::{lambda(couchbase::operations::upsert_response)#1}&&) (this=0x7f14ec00a450, request=..., handler=...) at /home/couchbase/jenkins/workspace/c-cpp/cxx/centos-cxx-sdk-server-situational-tests/couchbase-cxx-client/couchbase/bucket.hxx:338
|
11:33:49 #9 0x0000000000db34e6 in couchbase::cluster::execute<couchbase::operations::upsert_request, CBSdkd::Handle::execute_async_ec<couchbase::operations::upsert_request>(couchbase::operations::upsert_request)::{lambda(couchbase::operations::upsert_response)#1}, 0>(couchbase::operations::upsert_request, CBSdkd::Handle::execute_async_ec<couchbase::operations::upsert_request>(couchbase::operations::upsert_request)::{lambda(couchbase::operations::upsert_response)#1}&&) (this=0x198e960, request=..., handler=...) at /home/couchbase/jenkins/workspace/c-cpp/cxx/centos-cxx-sdk-server-situational-tests/couchbase-cxx-client/couchbase/cluster.hxx:172
|
11:33:49 #10 0x0000000000daf719 in CBSdkd::Handle::execute_async_ec<couchbase::operations::upsert_request> (this=0x7f14ec003f40, request=...) at /home/couchbase/jenkins/workspace/c-cpp/cxx/centos-cxx-sdk-server-situational-tests/sdkd-cxx/src/Handle.h:193
|
11:33:49 #11 0x0000000000e80178 in CBSdkd::CBASLoader::populate (this=0x7f14f3ffe190, ds=...) at /home/couchbase/jenkins/workspace/c-cpp/cxx/centos-cxx-sdk-server-situational-tests/sdkd-cxx/src/CBASLoader.cpp:20
|
11:33:50 #12 0x0000000000e5afb9 in CBSdkd::WorkerDispatch::processRequest (this=0x19b7970, req=...) at /home/couchbase/jenkins/workspace/c-cpp/cxx/centos-cxx-sdk-server-situational-tests/sdkd-cxx/src/Worker.cpp:285
|
11:33:50 #13 0x0000000000e5b8cc in CBSdkd::WorkerDispatch::selectLoop (this=0x19b7970) at /home/couchbase/jenkins/workspace/c-cpp/cxx/centos-cxx-sdk-server-situational-tests/sdkd-cxx/src/Worker.cpp:354
|
11:33:50 #14 0x0000000000e5b97e in CBSdkd::WorkerDispatch::run (this=0x19b7970) at /home/couchbase/jenkins/workspace/c-cpp/cxx/centos-cxx-sdk-server-situational-tests/sdkd-cxx/src/Worker.cpp:376
|
11:33:50 #15 0x0000000000c92346 in CBSdkd::new_worker_thread (worker=0x19b7970) at /home/couchbase/jenkins/workspace/c-cpp/cxx/centos-cxx-sdk-server-situational-tests/sdkd-cxx/src/Control.cpp:125
|
11:33:50 #16 0x00007f14fdf9e14a in start_thread () from /lib64/libpthread.so.0
|
11:33:50 #17 0x00007f14fc601dc3 in clone () from /lib64/libc.so.6
|