Details
-
Bug
-
Status: Closed (View Workflow)
-
Blocker
-
Resolution: Fixed
-
1.0.9, 1.1.0
-
None
-
None
-
2017-15, 2017-16
Description
How I reproduce this:
1. Run 100 concurrent connections looping ColumnStore queries
2. Kill random connections until ExeMgr dies (usually 1 in 50)
Crash happens here in inetstreamsocket.cpp:
if (stats)
|
stats->dataSent(msglen + sizeof(msglen) + sizeof(magic));
|
Core file bt:
Core was generated by `'.
|
Program terminated with signal SIGSEGV, Segmentation fault.
|
#0 0x00007f93c0000168 in ?? ()
|
[Current thread is 1 (Thread 0x7f91a6ff5700 (LWP 14761))]
|
(gdb) bt
|
#0 0x00007f93c0000168 in ?? ()
|
#1 0x00007f94373e6458 in messageqcpp::InetStreamSocket::do_write (
|
this=this@entry=0x13c3a30, msg=..., whichMagic=whichMagic@entry=352043319,
|
stats=stats@entry=0x7f93c0022ff0)
|
at /home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/utils/messageqcpp/inetstreamsocket.cpp:627
|
#2 0x00007f94373e658d in messageqcpp::InetStreamSocket::write (
|
this=this@entry=0x13c3a30, msg=..., stats=stats@entry=0x7f93c0022ff0)
|
at /home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/utils/messageqcpp/inetstreamsocket.cpp:632
|
#3 0x00007f94373edcd1 in messageqcpp::CompressedInetStreamSocket::write (
|
this=0x13c3a30, msg=..., stats=0x7f93c0022ff0)
|
at /home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/utils/messageqcpp/compressed_iss.cpp:122
|
#4 0x00007f94373d9f6e in messageqcpp::IOSocket::write (stats=0x7f93c0022ff0,
|
msg=..., this=0x13c3968)
|
at /home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/utils/messageqcpp/iosocket.h:206
|
#5 messageqcpp::MessageQueueClient::write (this=this@entry=0x13c3930,
|
msg=..., timeout=timeout@entry=0x0, stats=stats@entry=0x7f93c0022ff0)
|
at /home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/utils/messageqcpp/messagequeue.cpp:278
|
#6 0x00007f943a231b1d in joblist::DistributedEngineComm::writeToClient (
|
is@entry=0x139c5e0, index=1, bs=..., sender=sender@entry=2284,
|
doInterleaving=doInterleaving@entry=true)
|
at /home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/dbcon/joblist/distributedenginecomm.cpp:857
|
#7 0x00007f943a2346c6 in joblist::DistributedEngineComm::write (this=0x139c5e0, senderID=2284, msg=...)
|
at /home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/dbcon/joblist/distributedenginecomm.cpp:747
|
#8 0x00007f943a30d68f in joblist::TupleBPS::sendJobs (this=this@entry=0x7f93c0112e80,
|
jobs=std::vector of length 65, capacity 128 = {...})
|
at /home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/dbcon/joblist/tuple-bps.cpp:1298
|
#9 0x00007f943a312bf3 in joblist::TupleBPS::sendPrimitiveMessages (this=0x7f93c0112e80)
|
at /home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/dbcon/joblist/tuple-bps.cpp:1691
|
#10 0x00007f943a321fef in joblist::TupleBPSPrimitive::operator() (this=<optimised out>)
|
at /home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/dbcon/joblist/tuple-bps.cpp:108
|
#11 boost::detail::thread_data<joblist::TupleBPSPrimitive>::run (this=0x7f93c01c9390)
|
at /usr/include/boost/thread/detail/thread.hpp:116
|
#12 0x00007f94369365d5 in boost::(anonymous namespace)::thread_proxy (param=<optimised out>)
|
at libs/thread/src/pthread/thread.cpp:168
|
#13 0x00007f9435dec6ba in start_thread (arg=0x7f91a6ff5700) at pthread_create.c:333
|
#14 0x00007f94348743dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109
|