[MXS-2616] GWBUF debug assertion on exit Created: 2019-07-26  Updated: 2020-03-20  Resolved: 2020-03-20

Status: Closed
Project: MariaDB MaxScale
Component/s: Core
Affects Version/s: None
Fix Version/s: 2.5.0

Type: Bug Priority: Major
Reporter: markus makela Assignee: markus makela
Resolution: Fixed Votes: 0
Labels: None

Sprint: MXS-SPRINT-102

 Description   

Seems to happen if a mxs::Buffer gets created on a worker thread and destroyed on the main thread.

debug assert at /home/markusjm/MaxScale/server/core/buffer.cc:106 failed: buf->owner == RoutingWorker::get_current_id()
Fatal: MaxScale 2.3.10 received fatal signal 6. Attempting backtrace.
Commit ID: b07ffdb2fad57704ba0e3dcb7085a719b0495bb5 System name: Linux Release string: Fedora release 30 (Thirty)
 
2019-07-26 20:06:47   alert  : Fatal: MaxScale 2.3.10 received fatal signal 6. Attempting backtrace.
2019-07-26 20:06:47   alert  : Commit ID: b07ffdb2fad57704ba0e3dcb7085a719b0495bb5 System name: Linux Release string: Fedora release 30 (Thirty)
2019-07-26 20:06:47   alert  :   /lib64/libpthread.so.0(+0x12e80): sigaction.c:?
2019-07-26 20:06:47   alert  :   /lib64/libpthread.so.0(raise+0x145): :?
2019-07-26 20:06:47   alert  :   /home/markusjm/build-2.3/lib64/maxscale/libmaxscale-common.so.1.0.0(gwbuf_free+0x127): server/core/buffer.cc:107
2019-07-26 20:06:47   alert  :   /home/markusjm/build-2.3/lib64/maxscale/libmaxscale-common.so.1.0.0(_ZN18DelayedRoutingTaskD1Ev+0x71): server/core/session.cc:1131
2019-07-26 20:06:47   alert  :   /home/markusjm/build-2.3/lib64/maxscale/libmaxscale-common.so.1.0.0(+0x379d3a): server/core/session.cc:1161 (discriminator 1)
2019-07-26 20:06:47   alert  :   /home/markusjm/build-2.3/lib64/maxscale/libmaxscale-common.so.1.0.0(_ZN7maxbase6Worker19DelayedCallFunctionIP18DelayedRoutingTaskE7do_callENS0_4Call8action_tE+0x73): maxutils/maxbase/include/maxbase/worker.hh:833
2019-07-26 20:06:47   alert  :   /home/markusjm/build-2.3/lib64/maxscale/libmaxscale-common.so.1.0.0(_ZN7maxbase6Worker11DelayedCall4callENS0_4Call8action_tE+0x6c): maxutils/maxbase/include/maxbase/worker.hh:774
2019-07-26 20:06:47   alert  :   /home/markusjm/build-2.3/lib64/maxscale/libmaxscale-common.so.1.0.0(_ZN7maxbase6WorkerD1Ev+0x3f4): maxutils/maxbase/src/worker.cc:331
2019-07-26 20:06:47   alert  :   /home/markusjm/build-2.3/lib64/maxscale/libmaxscale-common.so.1.0.0(_ZN8maxscale13RoutingWorkerD2Ev+0xdb): server/core/routingworker.cc:270
2019-07-26 20:06:48   alert  :   /home/markusjm/build-2.3/lib64/maxscale/libmaxscale-common.so.1.0.0(_ZN8maxscale13RoutingWorkerD0Ev+0x18): server/core/routingworker.cc:270
2019-07-26 20:06:48   alert  :   /home/markusjm/build-2.3/lib64/maxscale/libmaxscale-common.so.1.0.0(_ZN8maxscale13RoutingWorker6finishEv+0x24d): server/core/routingworker.cc:385 (discriminator 2)
2019-07-26 20:06:48   alert  :   bin/maxscale(main+0x33e6): server/core/gateway.cc:2293
2019-07-26 20:06:48   alert  :   /lib64/libc.so.6(__libc_start_main+0xf3): ??:?
2019-07-26 20:06:48   alert  :   bin/maxscale(_start+0x2e): ??:?



 Comments   
Comment by markus makela [ 2020-03-20 ]

MaxScale 2.5.0 waits for all sessions to close before shutting down. This means that this cannot happen anymore.

Generated at Thu Feb 08 04:15:26 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.