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

With SPIDER plugin installed, XA COMMIT/ROLLBACK after recovery causes assertion `! is_set()' failure in Diagnostics_area::set_ok_status

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 10.0.10
    • Fix Version/s: 10.0.11
    • Component/s: None
    • Labels:

      Description

      If SPIDER plugin is installed, XA COMMIT (or ROLLBACK) fails after XA recovery:

      #7  0x00007fca70c8d192 in __GI___assert_fail (assertion=0xe7044f "! is_set()", file=0xe70380 "10.0/sql/sql_error.cc", line=362, function=0xe708e0 "void Diagnostics_area::set_ok_status(THD*, ulonglong, ulonglong, const char*)") at assert.c:103
      #8  0x00000000005fdd8a in Diagnostics_area::set_ok_status (this=0x35c9418, thd=0x35c4568, affected_rows_arg=0, last_insert_id_arg=0, message_arg=0x0) at 10.0/sql/sql_error.cc:362
      #9  0x00000000005babfa in my_ok (thd=0x35c4568, affected_rows=0, id=0, message=0x0) at 10.0/sql/sql_class.h:3376
      #10 0x0000000000629e0e in mysql_execute_command (thd=0x35c4568) at 10.0/sql/sql_parse.cc:4755
      #11 0x000000000062d680 in mysql_parse (thd=0x35c4568, rawbuf=0x7fca38006e40 "XA COMMIT 'xa1'", length=15, parser_state=0x7fca70208500) at 10.0/sql/sql_parse.cc:6176
      #12 0x0000000000620556 in dispatch_command (command=COM_QUERY, thd=0x35c4568, packet=0x35c9769 "XA COMMIT 'xa1'", packet_length=15) at 10.0/sql/sql_parse.cc:1274
      #13 0x000000000061f9cc in do_command (thd=0x35c4568) at 10.0/sql/sql_parse.cc:983
      #14 0x000000000073d820 in do_handle_one_connection (thd_arg=0x35c4568) at 10.0/sql/sql_connect.cc:1267
      #15 0x000000000073d573 in handle_one_connection (arg=0x35c4568) at 10.0/sql/sql_connect.cc:1181
      #16 0x00000000009d32b4 in pfs_spawn_thread (arg=0x33fc6b8) at 10.0/storage/perfschema/pfs.cc:1800
      #17 0x00007fca71c73e9a in start_thread (arg=0x7fca70209700) at pthread_create.c:308
      #18 0x00007fca70d51cbd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
      

      bzr version-info

      revision-id: svoj@mariadb.org-20130627111848-b8kc0z60ywwpqavz
      revno: 3762
      branch-nick: 10.0
      

      The failure happens even if SPIDER itself is not involved in the transaction. It's enough just to have the plugin installed:

      
      --source include/have_innodb.inc
      
      install soname 'ha_spider.so';
      
      --connection default
      eval CREATE TABLE t1 (a INT) ENGINE=InnoDB;
      
      --connect (con1,localhost,root,,)
      XA START 'xa1';
      INSERT INTO t1 (a) VALUES (1),(2);
      XA END 'xa1';
      XA PREPARE 'xa1';
      
      --connection default
      --enable_reconnect
      --append_file $MYSQLTEST_VARDIR/tmp/mysqld.1.expect
      restart
      EOF
      --shutdown_server 0
      --source include/wait_until_disconnected.inc
      --source include/wait_until_connected_again.inc
      XA RECOVER;
      XA COMMIT 'xa1';
      

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

              Hide
              elenst Elena Stepanova added a comment -

              On a release build, it produces a weird error:

              query 'XA COMMIT 'xa1'' failed: 1146: Table 'mysql.spider_xa' doesn't exist
              
              Show
              elenst Elena Stepanova added a comment - On a release build, it produces a weird error: query 'XA COMMIT 'xa1'' failed: 1146: Table 'mysql.spider_xa' doesn't exist
              Hide
              svoj Sergey Vojtovich added a comment -

              According to Kentoku it was fixed in Spider 3.2, which is available in MariaDB 10.0.11.

              Show
              svoj Sergey Vojtovich added a comment - According to Kentoku it was fixed in Spider 3.2, which is available in MariaDB 10.0.11.

                People

                • Assignee:
                  svoj Sergey Vojtovich
                  Reporter:
                  elenst Elena Stepanova
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  3 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: