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

Atomic CoR: Transaction not registered for MariaDB 2PC, but transaction is active

    XMLWordPrintable

Details

    • Q3/2026 Server Development, Q4/2026 Server Maintenance

    Description

      I've made it feature-critical so that it doesn't get lost right away, but I won't object if it's demoted. We had similar issues before (e.g. MDEV-22848), they remained open for a long time, so maybe they are not that important.

      --source include/have_innodb.inc
      --source include/have_log_bin.inc
       
      CREATE TEMPORARY TABLE tmp (a INT) ENGINE=MyISAM;
      CREATE SEQUENCE s ENGINE=InnoDB;
      SET SESSION TRANSACTION ISOLATION LEVEL SERIALIZABLE;
      --error ER_CHECK_NOT_IMPLEMENTED
      CREATE OR REPLACE TABLE s (a INT) ENGINE=CSV;
      CREATE OR REPLACE TABLE s ENGINE=MyISAM AS SELECT * FROM tmp;
       
      # Cleanup
      DROP TABLE s;
      

      bb-main-atomic e5d01cc1ae5ed3e97fdb0e329a9fd967c4c72856 non-debug

      2026-09-01 16:51:38 5 [ERROR] Transaction not registered for MariaDB 2PC, but transaction is active
      

      bb-main-atomic e5d01cc1ae5ed3e97fdb0e329a9fd967c4c72856 debug

      mariadbd: /data/bld/bb-main-atomic-debug/storage/innobase/handler/ha_innodb.cc:17673: int innobase_xa_prepare(THD*, bool): Assertion `trx_is_registered_for_2pc(trx)' failed.
      260901 16:53:43 [ERROR] /data/bld/bb-main-atomic-debug/sql/mariadbd got signal 6 ;
       
      #7  0x00007f8043e34420 in ?? () from /lib/x86_64-linux-gnu/libc.so.6
      #8  0x000055f58962ab29 in innobase_xa_prepare (thd=0x778008000dd0, prepare_trx=false) at /data/bld/bb-main-atomic-debug/storage/innobase/handler/ha_innodb.cc:17673
      #9  0x000055f5890d67f1 in prepare_or_error (ht=0x55f596408570, thd=0x778008000dd0, all=false) at /data/bld/bb-main-atomic-debug/sql/handler.cc:1508
      #10 0x000055f5890d7b50 in ha_commit_trans (thd=0x778008000dd0, all=false) at /data/bld/bb-main-atomic-debug/sql/handler.cc:2015
      #11 0x000055f588e49e9f in trans_commit_stmt (thd=0x778008000dd0) at /data/bld/bb-main-atomic-debug/sql/transaction.cc:498
      #12 0x000055f588d2c051 in Table_specification_st::finalize_create_table (this=0x7f80375674d0, thd=0x778008000dd0, orig_table=0x778008018ae0, query=0x778008018960 "CREATE OR REPLACE TABLE s ENGINE=MyISAM AS SELECT * FROM tmp", query_length=60, is_trans=true) at /data/bld/bb-main-atomic-debug/sql/sql_table.cc:4797
      #13 0x000055f588b7711b in select_create::send_eof (this=0x77800801ab00) at /data/bld/bb-main-atomic-debug/sql/sql_insert.cc:5566
      #14 0x000055f588c8348d in return_zero_rows (join=0x77800801ac50, result=0x77800801ab00, tables=0x778008019468, fields=0x778008019508, send_row=false, select_options=2201187781376, info=0x55f589dd36c0 "no matching row in const table", having=0x0, all_fields=0x77800801aff8) at /data/bld/bb-main-atomic-debug/sql/sql_select.cc:17969
      #15 0x000055f588c5ec8c in JOIN::exec_inner (this=0x77800801ac50) at /data/bld/bb-main-atomic-debug/sql/sql_select.cc:5051
      #16 0x000055f588c5e216 in JOIN::exec (this=0x77800801ac50) at /data/bld/bb-main-atomic-debug/sql/sql_select.cc:4914
      #17 0x000055f588c5fbf4 in mysql_select (thd=0x778008000dd0, tables=0x7780080198f0, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2201187781376, result=0x77800801ab00, unit=0x778008005548, select_lex=0x778008019250) at /data/bld/bb-main-atomic-debug/sql/sql_select.cc:5440
      #18 0x000055f588c4caf6 in handle_select (thd=0x778008000dd0, lex=0x778008005468, result=0x77800801ab00, setup_tables_done_option=0) at /data/bld/bb-main-atomic-debug/sql/sql_select.cc:637
      #19 0x000055f588d49fde in Sql_cmd_create_table_like::execute (this=0x778008018a40, thd=0x778008000dd0) at /data/bld/bb-main-atomic-debug/sql/sql_table.cc:14222
      #20 0x000055f588bdf341 in mysql_execute_command (thd=0x778008000dd0, is_called_from_prepared_stmt=false) at /data/bld/bb-main-atomic-debug/sql/sql_parse.cc:5905
      #21 0x000055f588be5cab in mysql_parse (thd=0x778008000dd0, rawbuf=0x778008018960 "CREATE OR REPLACE TABLE s ENGINE=MyISAM AS SELECT * FROM tmp", length=60, parser_state=0x7f80375681a0) at /data/bld/bb-main-atomic-debug/sql/sql_parse.cc:7956
      #22 0x000055f588bd0feb in dispatch_command (command=COM_QUERY, thd=0x778008000dd0, packet=0x77800800c751 "CREATE OR REPLACE TABLE s ENGINE=MyISAM AS SELECT * FROM tmp", packet_length=60, blocking=true) at /data/bld/bb-main-atomic-debug/sql/sql_parse.cc:1903
      #23 0x000055f588bcf8af in do_command (thd=0x778008000dd0, blocking=true) at /data/bld/bb-main-atomic-debug/sql/sql_parse.cc:1437
      #24 0x000055f588e20a04 in do_handle_one_connection (connect=0x55f596fee080, put_in_cache=true) at /data/bld/bb-main-atomic-debug/sql/sql_connect.cc:1514
      #25 0x000055f588e20785 in handle_one_connection (arg=0x55f596fd01c0) at /data/bld/bb-main-atomic-debug/sql/sql_connect.cc:1426
      #26 0x000055f5894a37a0 in pfs_spawn_thread (arg=0x55f596f14730) at /data/bld/bb-main-atomic-debug/storage/perfschema/pfs.cc:2198
      #27 0x00007f8043e9eb7b in ?? () from /lib/x86_64-linux-gnu/libc.so.6
      

      Not reproducible on the feature baseline.

      Attachments

        Issue Links

          Activity

            People

              monty Michael Widenius
              elenst Elena Stepanova
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:

                Time Tracking

                  Estimated:
                  Original Estimate - 5h 2m
                  5h 2m
                  Remaining:
                  Remaining Estimate - 5h 2m
                  5h 2m
                  Logged:
                  Time Spent - Not Specified
                  Not Specified

                  Git Integration

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