Hello community,
I have an application which uses the Cassandra C++ driver 2.17.0 with libuv 1.48.0.
My client application is hosted by the same machine which hosts Cassandra instances.
When the VM restarts, there are times were my client process tries to initialize to connect to Cassandra while none of the instances are yet available.
In such cases, I have observed that my client application crashes with the a core dump.
The backtrace is the following:
Program terminated with signal SIGABRT, Aborted.
#0 0x00007ffad9e030c7 in raise () from /lib64/libc.so.6
[Current thread is 1 (Thread 0x7ff5bd1fd700 (LWP 25774))]
#0 0x00007ffad9e030c7 in raise () from /lib64/libc.so.6
#1 0x00007ffad9e0449a in abort () from /lib64/libc.so.6
#2 0x00007ffad9dfc016 in __assert_fail_base () from /lib64/libc.so.6
#3 0x00007ffad9dfc0c2 in __assert_fail () from /lib64/libc.so.6
#4 0x0000000001a2e90d in uv.close.part ()
#5 0x0000000001a2f2c0 in uv.close ()
#6 0x0000000001a31eb5 in uv.loop_close ()
#7 0x0000000001a2dd50 in uv_loop_close ()
#8 0x000000000196e364 in datastax::internal::core::EventLoop::~EventLoop() ()
#9 0x000000000196e442 in datastax::internal::core::EventLoop::~EventLoop() ()
#10 0x000000000191ddea in datastax::internal::DefaultDeleter<datastax::internal::core::EventLoop>::operator()(datastax::internal::core::EventLoop*) const ()
#11 0x000000000191cd00 in datastax::internal::ScopedPtr<datastax::internal::core::EventLoop, datastax::internal::DefaultDeleter<datastax::internal::core::EventLoop> >::~ScopedPtr() ()
#12 0x00000000019190a5 in datastax::internal::core::SessionBase::~SessionBase() ()
#13 0x0000000001912145 in datastax::internal::core::Session::~Session() ()
#14 0x000000000191218e in datastax::internal::core::Session::~Session() ()
#15 0x0000000001911654 in cass_session_free ()
In the logs, I can find an assertion failing:
src/unix/core.c:634: uv__close: Assertion `fd > 2' failed
I have been using the Cassandra C++ driver for many years and I have been observing such crashes in nearly all versions that I have tried so far.
From the backtrace, it seems that this is a fault in the driver rather than my application.
Do you have similar experiences from your application?
Do you know if there is a known issue about this crash?
BR
Michalis Kotsiouros