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

Seemingly invalid 'BINLOG_BASE64_EVENT: Rolling back unfinished transaction ... Internal MariaDB error code: 0' Error | Assertion `!is_set() || (m_status == DA_OK_BULK && is_bulk_op())' failed in Diagnostics_area::set_ok_status

    XMLWordPrintable

    Details

      Description

      As discussed with Andrei Elkin. This (seemingly invalid) error is often seen during test runs:

      10.8.0 347f6d01e3b570dce49aa1ab42cb83021905a14d (Optimized)

      2022-01-18 23:23:40 4 [Note]  BINLOG_BASE64_EVENT: Rolling back unfinished transaction (no COMMIT or ROLLBACK in relay log). A probable cause is that the master died while writing the transaction to its binary log, thus rolled back too. Internal MariaDB error code: 0     
      

      However, no replication is active, it is a single server, a single SQL thread, and only a simple testcase is needed to produce either this message and/or a crash on debug:

      CREATE TABLE t (c CHAR(1));
      XA START 'a';
      SELECT dt DIV 1 AS f,id FROM t GROUP BY f;
      BINLOG ' O1ZVRw8BAAAAZgAAAGoAAAAAAAQANS4xLjIzLXJjLWRlYnVnLWxvZwAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAA7VlVHEzgNAAgAEgAEBAQEEgAAUwAEGggAAAAICAgC ';
      

      CREATE TABLE t (c INT KEY,c2 CHAR(1),c3 DATE);
      XA START 'b';
      SELECT INTc,INTc2,CHARc,CHARc2,CHARc3 FROM t WHERE id=0;
      BINLOG ' SOgWTg8CAAAAbgAAAHIAAAAAAAQANS42LjMtbTUtZGVidWctbG9nAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAABI6BZOEzgNAAgAEgAEBAQEEgAAVgAEGggAAAAICAgCAAAAAAVAYI8=';
      

      Optimized may see the message only, and debug the message and crash. The crash is after the message:

      10.8.0 347f6d01e3b570dce49aa1ab42cb83021905a14d (Debug)

      2022-01-18 23:23:36 4 [Note]  BINLOG_BASE64_EVENT: Rolling back unfinished transaction (no COMMIT or ROLLBACK in relay log). A probable cause is that the master died while writing the transaction to its binary log, thus rolled back too. Internal MariaDB error code: 0
      mysqld: /test/10.8_dbg/sql/sql_error.cc:335: void Diagnostics_area::set_ok_status(ulonglong, ulonglong, const char*): Assertion `!is_set() || (m_status == DA_OK_BULK && is_bulk_op())' failed.
      

      As discussed, it would be great to see this one resolved asap as the message shows up all over the test results, and clogs runs up. I have marked it critical as such for the moment. Thank you!

        Attachments

          Activity

            People

            Assignee:
            Elkin Andrei Elkin
            Reporter:
            Roel Roel Van de Paar
            Votes:
            0 Vote for this issue
            Watchers:
            4 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.