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

Data from orphaned XA transaction is lost after online alter

    XMLWordPrintable

Details

    Description

      --source include/have_innodb.inc
       
      create table t (a int primary key) engine=innodb;
      insert into t values (1);
       
      --echo # XA commit
       
      set debug_sync= 'alter_table_online_downgraded signal downgraded wait_for go';
      send alter table t force, algorithm=copy, lock=none;
       
      --connect(con1, localhost, root,,)
      set debug_sync= 'now wait_for downgraded';
      xa begin 'x1';
      update t set a = 2 where a = 1;
      xa end 'x1';
      xa prepare 'x1';
      --disconnect con1
      --connect(con1, localhost, root,,)
      xa commit 'x1';
      set debug_sync= 'now signal go';
      --connection default
      --reap # alter table
       
      select * from t;
      

      The result expected is 2 in the output, but actual result is 1.

      Attachments

        Issue Links

          Activity

            People

              nikitamalyavin Nikita Malyavin
              nikitamalyavin Nikita Malyavin
              Votes:
              0 Vote for this issue
              Watchers:
              3 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.