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

Assertion `sp && savepoint_next && *sp && *sp <= savepoint_level' failed in int federatedx_txn::sp_release(ulong *)

    XMLWordPrintable

Details

    • Not for Release Notes

    Description

      MDEV-38449 is still reproduced on latest bb-main-global-tmp branch

      INSTALL SONAME 'ha_federatedx';
      CREATE GLOBAL TEMPORARY TABLE t1 (c INT) ENGINE=MEMORY ON COMMIT PRESERVE ROWS;
      CREATE SERVER srv FOREIGN DATA WRAPPER mysql OPTIONS (SOCKET '../socket.sock', DATABASE 'test', USER 'root@localhost', PASSWORD '');
      CREATE GLOBAL TEMPORARY TABLE t3 (c INT) CONNECTION='srv/t1' ENGINE=Federated ON COMMIT DELETE ROWS;
      XA START 'a';
      INSERT INTO t3 (a) VALUES (1);
      SAVEPOINT sp1;
      RELEASE SAVEPOINT sp1; ## ROLLBACK TO sp1; # Also shows similar assertion with slightly different stack
      

      Leads to

      MDEV-35915 CS 13.0.0 fcf14161a97ec5542a265d6f00a95264dbad4fa7 (Debug, Clang 18.1.3-11) Build 03/06/2026

      mariadbd: /test/mtest/MDEV-35915/bb-main-global-tmp_dbg/storage/federatedx/federatedx_txn.cc:343: int federatedx_txn::sp_release(ulong *): Assertion `sp && savepoint_next && *sp && *sp <= savepoint_level' failed.
      

      MDEV-35915 CS 13.0.0 fcf14161a97ec5542a265d6f00a95264dbad4fa7 (Debug, Clang 18.1.3-11) Build 03/06/2026

      Core was generated by `/test/mtest/MDEV-35915/MD030626-mariadb-13.0.0-linux-x86_64-dbg/bin/mariadbd --'.
      Program terminated with signal SIGABRT, Aborted.
      #0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>)at ./nptl/pthread_kill.c:44
       
      [Current thread is 1 (LWP 1626502)]
      (gdb) bt
      #0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>)at ./nptl/pthread_kill.c:44
      #1  __pthread_kill_internal (signo=6, threadid=<optimized out>)at ./nptl/pthread_kill.c:78
      #2  __GI___pthread_kill (threadid=<optimized out>, signo=signo@entry=6)at ./nptl/pthread_kill.c:89
      #3  0x0000713b7cc4527e in __GI_raise (sig=sig@entry=6)at ../sysdeps/posix/raise.c:26
      #4  0x0000713b7cc288ff in __GI_abort () at ./stdlib/abort.c:79
      #5  0x0000713b7cc2881b in __assert_fail_base (fmt=0x713b7cdd01e8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x713b782ad8be "sp && savepoint_next && *sp && *sp <= savepoint_level", file=file@entry=0x713b782ad6b0 "/test/mtest/MDEV-35915/bb-main-global-tmp_dbg/storage/federatedx/federatedx_txn.cc", line=line@entry=343, function=function@entry=0x713b782ad91d "int federatedx_txn::sp_release(ulong *)") at ./assert/assert.c:96
      #6  0x0000713b7cc3b517 in __assert_fail (assertion=0x713b782ad8be "sp && savepoint_next && *sp && *sp <= savepoint_level", file=0x713b782ad6b0 "/test/mtest/MDEV-35915/bb-main-global-tmp_dbg/storage/federatedx/federatedx_txn.cc", line=343, function=0x713b782ad91d "int federatedx_txn::sp_release(ulong *)")at ./assert/assert.c:105
      #7  0x0000713b782a929f in federatedx_txn::sp_release (this=0x7118c0054480, sp=0x7118c0022190)at /test/mtest/MDEV-35915/bb-main-global-tmp_dbg/storage/federatedx/federatedx_txn.cc:343
      #8  0x0000713b78291776 in ha_federatedx::savepoint_release (thd=0x7118c0000d58, sv=0x7118c0022190)at /test/mtest/MDEV-35915/bb-main-global-tmp_dbg/storage/federatedx/ha_federatedx.cc:3593
      #9  0x000057e9b441ea10 in ha_release_savepoint (thd=0x7118c0000d58, sv=0x7118c0022110)at /test/mtest/MDEV-35915/bb-main-global-tmp_dbg/sql/handler.cc:3436
      #10 0x000057e9b41d5401 in trans_release_savepoint (thd=0x7118c0000d58, name={str = 0x7118c001a198 "sp1", length = 3})at /test/mtest/MDEV-35915/bb-main-global-tmp_dbg/sql/transaction.cc:812
      #11 0x000057e9b3fc7c06 in mysql_execute_command (thd=0x7118c0000d58, is_called_from_prepared_stmt=false)at /test/mtest/MDEV-35915/bb-main-global-tmp_dbg/sql/sql_parse.cc:5644
      #12 0x000057e9b3fb8074 in mysql_parse (thd=0x7118c0000d58, rawbuf=0x7118c001a110 "RELEASE SAVEPOINT sp1", length=21, parser_state=0x713b783069f0)at /test/mtest/MDEV-35915/bb-main-global-tmp_dbg/sql/sql_parse.cc:7967
      #13 0x000057e9b3fb540d in dispatch_command (command=COM_QUERY, thd=0x7118c0000d58, packet=0x7118c000b4b9 "RELEASE SAVEPOINT sp1", packet_length=21, blocking=true)at /test/mtest/MDEV-35915/bb-main-global-tmp_dbg/sql/sql_parse.cc:1917
      #14 0x000057e9b3fb8c23 in do_command (thd=0x7118c0000d58, blocking=true)at /test/mtest/MDEV-35915/bb-main-global-tmp_dbg/sql/sql_parse.cc:1453
      #15 0x000057e9b41b44a9 in do_handle_one_connection (connect=0x57e9e0d98188, put_in_cache=true)at /test/mtest/MDEV-35915/bb-main-global-tmp_dbg/sql/sql_connect.cc:1503
      #16 0x000057e9b41b424e in handle_one_connection (arg=0x57e9e0d360b8)at /test/mtest/MDEV-35915/bb-main-global-tmp_dbg/sql/sql_connect.cc:1415
      #17 0x0000713b7cc9caa4 in start_thread (arg=<optimized out>)at ./nptl/pthread_create.c:447
      #18 0x0000713b7cd29c6c in clone3 ()at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
      

      Attachments

        Issue Links

          Activity

            People

              nikitamalyavin Nikita Malyavin
              ramesh Ramesh Sivaraman
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:

                Git Integration

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