[MXS-3803] Debug assertion in readwritesplit Created: 2021-10-04  Updated: 2021-10-11  Resolved: 2021-10-11

Status: Closed
Project: MariaDB MaxScale
Component/s: readwritesplit
Affects Version/s: 6.1.2
Fix Version/s: 6.1.4

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


 Description   

2021-10-02 22:09:42   error  : (41) [readwritesplit] (split-router); debug assert at /home/timofey_turenko_mariadb_com/MaxScale/server/modules/routing/readwritesplit/trx.hh:64 failed: target == m_target
debug assert at /home/timofey_turenko_mariadb_com/MaxScale/server/modules/routing/readwritesplit/trx.hh:64 failed: target == m_target
alert  : MaxScale 6.1.2 received fatal signal 6. Commit ID: 1479685b53546a0758137c81b864539a80b13bbc System name: Linux Release string: Ubuntu 20.04.2 LTS
 
 
2021-10-02 22:09:42   alert  : (41) (split-router); MaxScale 6.1.2 received fatal signal 6. Commit ID: 1479685b53546a0758137c81b864539a80b13bbc System name: Linux Release string: Ubuntu 20.04.2 LTS
2021-10-02 22:09:42   alert  : (41) (split-router); Statement currently being classified: none/unknown
2021-10-02 22:09:42   alert  : (41) (split-router); DCB: 0x7fd9140d7a90 Session: 41 Service: split-router
nm: /lib/x86_64-linux-gnu/libc.so.6: no symbols
alert  :   /lib/x86_64-linux-gnu/libpthread.so.0(raise+0xcb): ??:?
  /usr/lib/x86_64-linux-gnu/maxscale/libreadwritesplit.so(_ZN3Trx8add_stmtEPN8maxscale9RWBackendEP5GWBUF+0x2c8): server/modules/routing/readwritesplit/trx.hh:65 (discriminator 4)
  /usr/lib/x86_64-linux-gnu/maxscale/libreadwritesplit.so(_ZN14RWSplitSession19manage_transactionsEPN8maxscale9RWBackendEP5GWBUFRKNS0_5ReplyE+0x20d): server/modules/routing/readwritesplit/rwsplitsession.cc:363
  /usr/lib/x86_64-linux-gnu/maxscale/libreadwritesplit.so(_ZN14RWSplitSession11clientReplyEP5GWBUFRKSt6vectorIPN8maxscale8EndpointESaIS5_EERKNS3_5ReplyE+0x3a4): server/modules/routing/readwritesplit/rwsplitsession.cc:532
  /usr/lib/x86_64-linux-gnu/maxscale/libmaxscale-common.so.1.0.0(_ZN15ServiceEndpoint11clientReplyEP5GWBUFRSt6vectorIPN8maxscale8EndpointESaIS5_EERKNS3_5ReplyE+0x127): server/core/service.cc:1667
  /usr/lib/x86_64-linux-gnu/maxscale/libmaxscale-common.so.1.0.0(_ZN14ServerEndpoint11clientReplyEP5GWBUFRSt6vectorIPN8maxscale8EndpointESaIS5_EERKNS3_5ReplyE+0x143): server/core/server.cc:955 (discriminator 2)
  /usr/lib/x86_64-linux-gnu/maxscale/libmaxscale-common.so.1.0.0(_ZN24MariaDBBackendConnection11normal_readEv+0x78a): server/modules/protocol/MariaDB/mariadb_backend.cc:647
  /usr/lib/x86_64-linux-gnu/maxscale/libmaxscale-common.so.1.0.0(_ZN24MariaDBBackendConnection17ready_for_readingEP3DCB+0x39b): server/modules/protocol/MariaDB/mariadb_backend.cc:441
  /usr/lib/x86_64-linux-gnu/maxscale/libmaxscale-common.so.1.0.0(_ZN3DCB14process_eventsEj+0x551): server/core/dcb.cc:1259
  /usr/lib/x86_64-linux-gnu/maxscale/libmaxscale-common.so.1.0.0(_ZN3DCB13event_handlerEPS_j+0x33): server/core/dcb.cc:1311
  /usr/lib/x86_64-linux-gnu/maxscale/libmaxscale-common.so.1.0.0(_ZN3DCB12poll_handlerEP13MXB_POLL_DATAP10MXB_WORKERj+0x58): server/core/dcb.cc:1350
  /usr/lib/x86_64-linux-gnu/maxscale/libmaxscale-common.so.1.0.0(_ZN7maxbase6Worker15poll_waiteventsEv+0x4fc): maxutils/maxbase/src/worker.cc:863
  /usr/lib/x86_64-linux-gnu/maxscale/libmaxscale-common.so.1.0.0(_ZN7maxbase6Worker3runEPNS_9SemaphoreE+0x12d): maxutils/maxbase/src/worker.cc:560
  /usr/lib/x86_64-linux-gnu/maxscale/libmaxscale-common.so.1.0.0(_ZN7maxbase6Worker11thread_mainEPS0_PNS_9SemaphoreE+0x27): maxutils/maxbase/src/worker.cc:685
  /usr/lib/x86_64-linux-gnu/maxscale/libmaxscale-common.so.1.0.0(_ZSt13__invoke_implIvPFvPN7maxbase6WorkerEPNS0_9SemaphoreEEJS2_S4_EET_St14__invoke_otherOT0_DpOT1_+0x51): /usr/include/c++/9/bits/invoke.h:60
  /usr/lib/x86_64-linux-gnu/maxscale/libmaxscale-common.so.1.0.0(_ZSt8__invokeIPFvPN7maxbase6WorkerEPNS0_9SemaphoreEEJS2_S4_EENSt15__invoke_resultIT_JDpT0_EE4typeEOS8_DpOS9_+0x53): /usr/include/c++/9/bits/invoke.h:96
  /usr/lib/x86_64-linux-gnu/maxscale/libmaxscale-common.so.1.0.0(_ZNSt6thread8_InvokerISt5tupleIJPFvPN7maxbase6WorkerEPNS2_9SemaphoreEES4_S6_EEE9_M_invokeIJLm0ELm1ELm2EEEEvSt12_Index_tupleIJXspT_EEE+0x63): /usr/include/c++/9/thread:244
  /usr/lib/x86_64-linux-gnu/maxscale/libmaxscale-common.so.1.0.0(_ZNSt6thread8_InvokerISt5tupleIJPFvPN7maxbase6WorkerEPNS2_9SemaphoreEES4_S6_EEEclEv+0x1c): /usr/include/c++/9/thread:252
  /usr/lib/x86_64-linux-gnu/maxscale/libmaxscale-common.so.1.0.0(_ZNSt6thread11_State_implINS_8_InvokerISt5tupleIJPFvPN7maxbase6WorkerEPNS3_9SemaphoreEES5_S7_EEEEE6_M_runEv+0x20): /usr/include/c++/9/thread:195
  /lib/x86_64-linux-gnu/libstdc++.so.6(+0xd6de4): ??:?
  /lib/x86_64-linux-gnu/libpthread.so.0(+0x9609): ??:?
  /lib/x86_64-linux-gnu/libc.so.6(clone+0x43): ??:0



 Comments   
Comment by markus makela [ 2021-10-06 ]

I managed to reproduce this to some extent but what I found wasn't the exact debug assertion that this hit. If the code had continued on normally, it would have eventually hit the same debug assertion but that does not explain why the previous one was not hit in the original issue.

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