Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-25717

galera_sr.GCF-1060: int wsrep::client_state::after_rollback(): Assertion `owning_thread_id_ == wsrep::this_thread::get_id()' failed

    XMLWordPrintable

Details

    Description

      This assertion happens when a SR transaction is BF aborted at the slave node, and concurrently, it managed to replicate one more fragment which fails certification. As a result of failed certification, a rollback fragment is delievered at the slave, which also attempts to rollback the same transaction, which whose ownership is already acquired by rollbacker. Hence the assertion `owning_thread_id_ == wsrep::this_thread::get_id()`:

      Thread 1 (Thread 0x7fe708670700 (LWP 32457)):
      #0  __pthread_kill (threadid=<optimized out>, signo=6) at ../sysdeps/unix/sysv/linux/pthread_kill.c:62
      #1  0x00000000014b030b in my_write_core (sig=6) at /home/sciascid/Workspace/src/mariadb-server-test/mysys/stacktrace.c:386
      #2  0x0000000000bc6a7d in handle_fatal_signal (sig=6) at /home/sciascid/Workspace/src/mariadb-server-test/sql/signal_handler.cc:356
      #3  <signal handler called>
      #4  0x00007fe70d99f438 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:54
      #5  0x00007fe70d9a103a in __GI_abort () at abort.c:89
      #6  0x00007fe70d997be7 in __assert_fail_base (fmt=<optimized out>, assertion=assertion@entry=0x15a3d50 "owning_thread_id_ == wsrep::this_thread::get_id()", file=file@entry=0x15a3cf0 "/home/sciascid/Workspace/src/mariadb-server-test/wsrep-lib/include/wsrep/client_state.hpp", line=line@entry=532, function=function@entry=0x15a6e20 <wsrep::client_state::after_rollback()::__PRETTY_FUNCTION__> "int wsrep::client_state::after_rollback()") at assert.c:92
      #7  0x00007fe70d997c92 in __GI___assert_fail (assertion=0x15a3d50 "owning_thread_id_ == wsrep::this_thread::get_id()", file=0x15a3cf0 "/home/sciascid/Workspace/src/mariadb-server-test/wsrep-lib/include/wsrep/client_state.hpp", line=532, function=0x15a6e20 <wsrep::client_state::after_rollback()::__PRETTY_FUNCTION__> "int wsrep::client_state::after_rollback()") at assert.c:101
      #8  0x00000000007b62f4 in wsrep::client_state::after_rollback (this=0x7fe6ec0483b8) at /home/sciascid/Workspace/src/mariadb-server-test/wsrep-lib/include/wsrep/client_state.hpp:532
      #9  0x0000000000bc8e4d in wsrep_after_rollback (thd=0x7fe6ec0421e0, all=true) at /home/sciascid/Workspace/src/mariadb-server-test/sql/wsrep_trans_observer.h:383
      #10 0x0000000000bcdb72 in ha_rollback_trans (thd=0x7fe6ec0421e0, all=true) at /home/sciascid/Workspace/src/mariadb-server-test/sql/handler.cc:1938
      #11 0x00000000009f9159 in trans_rollback (thd=0x7fe6ec0421e0) at /home/sciascid/Workspace/src/mariadb-server-test/sql/transaction.cc:341
      #12 0x0000000000abf9e2 in Wsrep_high_priority_service::rollback (this=0x7fe6ec00c450, ws_handle=..., ws_meta=...) at /home/sciascid/Workspace/src/mariadb-server-test/sql/wsrep_high_priority_service.cc:367
      #13 0x000000000155a594 in rollback_fragment (server_state=..., high_priority_service=..., streaming_applier=0x7fe6ec00c450, ws_handle=..., ws_meta=...) at /home/sciascid/Workspace/src/mariadb-server-test/wsrep-lib/src/server_state.cpp:239
      #14 0x000000000155a9b5 in apply_write_set (server_state=..., high_priority_service=..., ws_handle=..., ws_meta=..., data=...) at /home/sciascid/Workspace/src/mariadb-server-test/wsrep-lib/src/server_state.cpp:316
      #15 0x000000000155e8a8 in wsrep::server_state::on_apply (this=0x4799910, high_priority_service=..., ws_handle=..., ws_meta=..., data=...) at /home/sciascid/Workspace/src/mariadb-server-test/wsrep-lib/src/server_state.cpp:1137
      #16 0x0000000001579243 in wsrep::high_priority_service::apply (this=0x7fe70866fdc0, ws_handle=..., ws_meta=..., data=...) at /home/sciascid/Workspace/src/mariadb-server-test/wsrep-lib/include/wsrep/high_priority_service.hpp:47
      #17 0x0000000001576430 in (anonymous namespace)::apply_cb (ctx=0x7fe70866fdc0, wsh=0x7fe70866e9b0, flags=2, buf=0x7fe70866e9d0, meta=0x7fe70866ed20, exit_loop=0x7fe70866ec1d) at /home/sciascid/Workspace/src/mariadb-server-test/wsrep-lib/src/wsrep_provider_v26.cpp:502
      #18 0x00007fe708a17af3 in galera::TrxHandleSlave::apply (this=0x7fe6ec032650, recv_ctx=0x7fe70866fdc0, apply_cb=0x1576207 <(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=@0x7fe70866ec1d: false) at /home/sciascid/Workspace/src/galera-bugs/galera/src/trx_handle.cpp:391
      #19 0x00007fe708a20e7e in galera::ReplicatorSMM::apply_trx (this=0x47c8cc0, recv_ctx=0x7fe70866fdc0, ts=...) at /home/sciascid/Workspace/src/galera-bugs/galera/src/replicator_smm.cpp:504
      #20 0x00007fe708a2ad13 in galera::ReplicatorSMM::process_trx (this=0x47c8cc0, recv_ctx=0x7fe70866fdc0, ts_ptr=...) at /home/sciascid/Workspace/src/galera-bugs/galera/src/replicator_smm.cpp:2127
      #21 0x00007fe708a74a77 in galera::GcsActionSource::process_writeset (this=0x47fafa0, recv_ctx=0x7fe70866fdc0, act=..., exit_loop=@0x7fe70866fb3a: false) at /home/sciascid/Workspace/src/galera-bugs/galera/src/gcs_action_source.cpp:62
      #22 0x00007fe708a7514c in galera::GcsActionSource::dispatch (this=0x47fafa0, recv_ctx=0x7fe70866fdc0, act=..., exit_loop=@0x7fe70866fb3a: false) at /home/sciascid/Workspace/src/galera-bugs/galera/src/gcs_action_source.cpp:110
      #23 0x00007fe708a758b0 in galera::GcsActionSource::process (this=0x47fafa0, recv_ctx=0x7fe70866fdc0, exit_loop=@0x7fe70866fb3a: false) at /home/sciascid/Workspace/src/galera-bugs/galera/src/gcs_action_source.cpp:183
      #24 0x00007fe708a202bc in galera::ReplicatorSMM::async_recv (this=0x47c8cc0, recv_ctx=0x7fe70866fdc0) at /home/sciascid/Workspace/src/galera-bugs/galera/src/replicator_smm.cpp:390
      #25 0x00007fe7089fc8ca in galera_recv (gh=0x4799cb0, recv_ctx=0x7fe70866fdc0) at /home/sciascid/Workspace/src/galera-bugs/galera/src/wsrep_provider.cpp:236
      #26 0x0000000001577316 in wsrep::wsrep_provider_v26::run_applier (this=0x4789950, applier_ctx=0x7fe70866fdc0) at /home/sciascid/Workspace/src/mariadb-server-test/wsrep-lib/src/wsrep_provider_v26.cpp:743
      #27 0x0000000000adff90 in wsrep_replication_process (thd=0x7fe6ec001d40, arg=0x47ff500) at /home/sciascid/Workspace/src/mariadb-server-test/sql/wsrep_thd.cc:57
      #28 0x0000000000ad07bc in start_wsrep_THD (arg=0x47ff500) at /home/sciascid/Workspace/src/mariadb-server-test/sql/wsrep_mysqld.cc:2892
      #29 0x0000000000e55a1b in pfs_spawn_thread (arg=0x47ebd60) at /home/sciascid/Workspace/src/mariadb-server-test/storage/perfschema/pfs.cc:1869
      #30 0x00007fe70ee8d6ba in start_thread (arg=0x7fe708670700) at pthread_create.c:333
      #31 0x00007fe70da7151d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109
      

      Attachments

        Issue Links

          Activity

            People

              jplindst Jan Lindström (Inactive)
              sciascid Daniele Sciascia
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.