[MDEV-30420] Assertion `mode_ == m_local' failed in int wsrep::client_state::append_key(const wsrep::key&) Created: 2023-01-17  Updated: 2023-04-13  Resolved: 2023-04-13

Status: Closed
Project: MariaDB Server
Component/s: Galera
Affects Version/s: 10.6
Fix Version/s: N/A

Type: Bug Priority: Major
Reporter: Ramesh Sivaraman Assignee: Jan Lindström
Resolution: Fixed Votes: 0
Labels: None

Issue Links:
Relates
relates to MDEV-24623 Galera does not support MDEV-515 bulk... Closed

 Description   

On node_1
---------
 
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) ENGINE=InnoDB;
SET foreign_key_checks = 0;
SET unique_checks = 0;
START TRANSACTION;
insert into t1 select seq from seq_1_to_10000;
 
On node_2
---------
 
SET foreign_key_checks = 1;
SET unique_checks = 1;
insert into t1 select seq from seq_10001_to_10010;
 
On node_1
---------
COMMIT;

Leads to

mysqld: /test/mtest/MDEV-24623/10.6/wsrep-lib/include/wsrep/client_state.hpp:351: int wsrep::client_state::append_key(const wsrep::key&): Assertion `mode_ == m_local' failed.
230117  6:28:38 [ERROR] mysqld got signal 6 ;

10.6.12 0bdf4690ab04e36591bc8ed77be237da89c61270

Core was generated by `/test/mtest/MDEV-24623/mariadb-10.6.12-linux-x86_64/bin/mysqld --defaults-file='.
Program terminated with signal SIGABRT, Aborted.
#0  __pthread_kill (threadid=<optimized out>, signo=6)
    at ../sysdeps/unix/sysv/linux/pthread_kill.c:56
[Current thread is 1 (Thread 0x152096438700 (LWP 2271674))]
(gdb) bt
#0  __pthread_kill (threadid=<optimized out>, signo=6) at ../sysdeps/unix/sysv/linux/pthread_kill.c:56
#1  0x0000555a3aab651d in my_write_core (sig=6) at /test/mtest/MDEV-24623/10.6/mysys/stacktrace.c:424
#2  0x0000555a3a1d5612 in handle_fatal_signal (sig=6) at /test/mtest/MDEV-24623/10.6/sql/signal_handler.cc:357
#3  <signal handler called>
#4  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#5  0x0000152097976859 in __GI_abort () at abort.c:79
#6  0x0000152097976729 in __assert_fail_base (fmt=0x152097b0c588 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=0x555a3aed4b3d "mode_ == m_local", 
    file=0x555a3aed4af8 "/test/mtest/MDEV-24623/10.6/wsrep-lib/include/wsrep/client_state.hpp", line=351, function=<optimized out>) at assert.c:92
#7  0x0000152097987fd6 in __GI___assert_fail (assertion=0x555a3aed4b3d "mode_ == m_local", file=0x555a3aed4af8 "/test/mtest/MDEV-24623/10.6/wsrep-lib/include/wsrep/client_state.hpp", line=351, 
    function=0x555a3aed4ac0 "int wsrep::client_state::append_key(const wsrep::key&)") at assert.c:101
#8  0x0000555a3a5dca9d in wsrep::client_state::append_key (this=0x152070007788, key=...) at /test/mtest/MDEV-24623/10.6/wsrep-lib/include/wsrep/client_state.hpp:351
#9  0x0000555a3a5dc36d in wsrep_thd_append_key (thd=0x152070000ff8, key=0x15207002d738, n_keys=1, key_type=WSREP_SERVICE_KEY_EXCLUSIVE) at /test/mtest/MDEV-24623/10.6/sql/service_wsrep.cc:317
#10 0x0000555a3a5dc8eb in wsrep_thd_append_table_key (thd=0x152070000ff8, db=0x1520964351e0 "test", table=0x1520964352b0 "t1", key_type=WSREP_SERVICE_KEY_EXCLUSIVE)
    at /test/mtest/MDEV-24623/10.6/sql/service_wsrep.cc:420
#11 0x0000555a3a7ab9a3 in row_ins_wsrep_start_bulk (trx=0x152087797680, index=...) at /test/mtest/MDEV-24623/10.6/storage/innobase/row/row0ins.cc:2598
#12 0x0000555a3a7ac67d in row_ins_clust_index_entry_low (flags=0, mode=BTR_MODIFY_LEAF, index=0x1520240291d8, n_uniq=1, entry=0x15207002d5b8, n_ext=0, thr=0x152070034548)
    at /test/mtest/MDEV-24623/10.6/storage/innobase/row/row0ins.cc:2757
#13 0x0000555a3a7ae252 in row_ins_clust_index_entry (index=0x1520240291d8, entry=0x15207002d5b8, thr=0x152070034548, n_ext=0) at /test/mtest/MDEV-24623/10.6/storage/innobase/row/row0ins.cc:3255
#14 0x0000555a3a7ae79e in row_ins_index_entry (index=0x1520240291d8, entry=0x15207002d5b8, thr=0x152070034548) at /test/mtest/MDEV-24623/10.6/storage/innobase/row/row0ins.cc:3381
#15 0x0000555a3a7af077 in row_ins_index_entry_step (node=0x152070034330, thr=0x152070034548) at /test/mtest/MDEV-24623/10.6/storage/innobase/row/row0ins.cc:3549
#16 0x0000555a3a7af55c in row_ins (node=0x152070034330, thr=0x152070034548) at /test/mtest/MDEV-24623/10.6/storage/innobase/row/row0ins.cc:3674
#17 0x0000555a3a7afcbd in row_ins_step (thr=0x152070034548) at /test/mtest/MDEV-24623/10.6/storage/innobase/row/row0ins.cc:3803
#18 0x0000555a3a7d0764 in row_insert_for_mysql (mysql_rec=0x152070033188 "\377\001", prebuilt=0x152070033e58, ins_mode=ROW_INS_NORMAL) at /test/mtest/MDEV-24623/10.6/storage/innobase/row/row0mysql.cc:1308
#19 0x0000555a3a608f35 in ha_innobase::write_row (this=0x1520700335f0, record=0x152070033188 "\377\001") at /test/mtest/MDEV-24623/10.6/storage/innobase/handler/ha_innodb.cc:7913
#20 0x0000555a3a1eef61 in handler::ha_write_row (this=0x1520700335f0, buf=0x152070033188 "\377\001") at /test/mtest/MDEV-24623/10.6/sql/handler.cc:7582
#21 0x0000555a3a363ea2 in Rows_log_event::write_row (this=0x1520700084e8, rgi=0x152070022500, overwrite=false) at /test/mtest/MDEV-24623/10.6/sql/log_event_server.cc:7343
#22 0x0000555a3a364cb0 in Write_rows_log_event::do_exec_row (this=0x1520700084e8, rgi=0x152070022500) at /test/mtest/MDEV-24623/10.6/sql/log_event_server.cc:7571
#23 0x0000555a3a35e6b8 in Rows_log_event::do_apply_event (this=0x1520700084e8, rgi=0x152070022500) at /test/mtest/MDEV-24623/10.6/sql/log_event_server.cc:5733
#24 0x0000555a39d273f7 in Log_event::apply_event (this=0x1520700084e8, rgi=0x152070022500) at /test/mtest/MDEV-24623/10.6/sql/log_event.h:1499
#25 0x0000555a3a5ce350 in wsrep_apply_events (thd=0x152070000ff8, rli=0x152070016600, events_buf=0x152087fffc18, buf_len=41994) at /test/mtest/MDEV-24623/10.6/sql/wsrep_applier.cc:208
#26 0x0000555a3a5a90ea in apply_events (thd=0x152070000ff8, rli=0x152070016600, data=..., err=...) at /test/mtest/MDEV-24623/10.6/sql/wsrep_high_priority_service.cc:128
#27 0x0000555a3a5ab3db in Wsrep_applier_service::apply_write_set (this=0x152096437bc0, ws_meta=..., data=..., err=...) at /test/mtest/MDEV-24623/10.6/sql/wsrep_high_priority_service.cc:583
#28 0x0000555a3ab663e3 in apply_write_set (server_state=..., high_priority_service=..., ws_handle=..., ws_meta=..., data=...) at /test/mtest/MDEV-24623/10.6/wsrep-lib/src/server_state.cpp:332
#29 0x0000555a3ab6a28a in wsrep::server_state::on_apply (this=0x555a3cb7aac0, high_priority_service=..., ws_handle=..., ws_meta=..., data=...) at /test/mtest/MDEV-24623/10.6/wsrep-lib/src/server_state.cpp:1119
#30 0x0000555a3ab8532b in wsrep::high_priority_service::apply (this=0x152096437bc0, ws_handle=..., ws_meta=..., data=...) at /test/mtest/MDEV-24623/10.6/wsrep-lib/include/wsrep/high_priority_service.hpp:47
#31 0x0000555a3ab81f6f in (anonymous namespace)::apply_cb (ctx=0x152096437bc0, wsh=0x152096436ba0, flags=65, buf=0x152096436bb0, meta=0x152096436e60, exit_loop=0x152096436e1f)
    at /test/mtest/MDEV-24623/10.6/wsrep-lib/src/wsrep_provider_v26.cpp:507
#32 0x0000152097412755 in galera::TrxHandleSlave::apply (this=this@entry=0x15207002cf70, recv_ctx=recv_ctx@entry=0x152096437bc0, 
    apply_cb=0x555a3ab81d3c <(anonymous namespace)::apply_cb(void*, wsrep_ws_handle_t const*, uint32_t, wsrep_buf_t const*, wsrep_trx_meta_t const*, wsrep_bool_t*)>, meta=..., 
    exit_loop=exit_loop@entry=@0x152096436e1f: false) at /test/mtest/MDEV-24623/galera/galera/src/trx_handle.cpp:396
#33 0x0000152097428f1e in galera::ReplicatorSMM::apply_trx (this=0x555a3cb8cff0, recv_ctx=0x152096437bc0, ts=...) at /test/mtest/MDEV-24623/galera/galera/src/replicator_smm.cpp:516
#34 0x000015209742d158 in galera::ReplicatorSMM::process_trx (this=0x555a3cb8cff0, recv_ctx=0x152096437bc0, ts_ptr=...) at /test/mtest/MDEV-24623/galera/galera/src/replicator_smm.cpp:2138
#35 0x000015209745ec99 in galera::GcsActionSource::process_writeset (this=0x555a3cb86230, recv_ctx=0x152096437bc0, act=..., exit_loop=@0x15209643779f: false)
    at /test/mtest/MDEV-24623/galera/galera/src/gcs_action_source.cpp:62
#36 0x000015209745f703 in galera::GcsActionSource::dispatch (this=0x555a3cb86230, recv_ctx=0x152096437bc0, act=..., exit_loop=<optimized out>)
    at /test/mtest/MDEV-24623/galera/galera/src/gcs_action_source.cpp:110
#37 0x000015209745fcc2 in galera::GcsActionSource::process (this=0x555a3cb86230, recv_ctx=0x152096437bc0, exit_loop=@0x15209643779f: false) at /test/mtest/MDEV-24623/galera/galera/src/gcs_action_source.cpp:186
--Type <RET> for more, q to quit, c to continue without paging--
#38 0x000015209742a5c0 in galera::ReplicatorSMM::async_recv (this=0x555a3cb8cff0, recv_ctx=0x152096437bc0) at /test/mtest/MDEV-24623/galera/galera/src/replicator_smm.cpp:402
#39 0x00001520973fee31 in galera_recv (gh=<optimized out>, recv_ctx=<optimized out>) at /test/mtest/MDEV-24623/galera/galera/src/wsrep_provider.cpp:264
#40 0x0000555a3ab83456 in wsrep::wsrep_provider_v26::run_applier (this=0x555a3cb399e0, applier_ctx=0x152096437bc0) at /test/mtest/MDEV-24623/10.6/wsrep-lib/src/wsrep_provider_v26.cpp:858
#41 0x0000555a3a5cf0e8 in wsrep_replication_process (thd=0x152070000ff8, arg=0x555a3cbc50c0) at /test/mtest/MDEV-24623/10.6/sql/wsrep_thd.cc:57
#42 0x0000555a3a5bdd63 in start_wsrep_THD (arg=0x555a3cbc50c0) at /test/mtest/MDEV-24623/10.6/sql/wsrep_mysqld.cc:3561
#43 0x0000555a3a5272e3 in pfs_spawn_thread (arg=0x555a3cbb1c38) at /test/mtest/MDEV-24623/10.6/storage/perfschema/pfs.cc:2201
#44 0x0000152097ea2609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#45 0x0000152097a73133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
(gdb)



 Comments   
Comment by Jan Lindström [ 2023-04-13 ]

Can't reproduce anymore using 10.6 commit 2ddfb8380.

Generated at Thu Feb 08 10:16:07 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.