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

Assertion `(thd->variables.option_bits & (1ULL << 25)) == 0' failed with parallel replication

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 10.0.13
    • Fix Version/s: 10.0.14
    • Component/s: None
    • Labels:
      None

      Description

      10.0/sql/log_event.cc:6555: virtual int Gtid_log_event::do_apply_event(rpl_group_info*): Assertion `(thd->variables.option_bits & (1ULL << 25)) == 0' failed.
      140807  2:27:35 [ERROR] mysqld got signal 6 ;

      #5  0x00007fdc71db07c0 in *__GI_abort () at abort.c:92
      #6  0x00007fdc71da66f1 in *__GI___assert_fail (assertion=0x1019e60 "(thd->variables.option_bits & (1ULL << 25)) == 0", file=<optimized out>, line=6555, function=0x101cae0 "virtual int Gtid_log_event::do_apply_event(rpl_group_info*)") at assert.c:81
      #7  0x00000000009561c4 in Gtid_log_event::do_apply_event (this=0x7fdc47336470, rgi=0x7fdc483dc800) at 10.0/sql/log_event.cc:6555
      #8  0x00000000005edf08 in Log_event::apply_event (this=0x7fdc47336470, rgi=0x7fdc483dc800) at 10.0/sql/log_event.h:1343
      #9  0x00000000005e4f8e in apply_event_and_update_pos (ev=0x7fdc47336470, thd=0x7fdc478bd070, rgi=0x7fdc483dc800, rpt=0x7fdc7163eeb0) at 10.0/sql/slave.cc:3255
      #10 0x00000000007f06b9 in rpt_handle_event (qev=0x7fdc46d83770, rpt=0x7fdc7163eeb0) at 10.0/sql/rpl_parallel.cc:36
      #11 0x00000000007f1f7b in handle_rpl_parallel_thread (arg=0x7fdc7163eeb0) at 10.0/sql/rpl_parallel.cc:724
      #12 0x00007fdc7395fb50 in start_thread (arg=<optimized out>) at pthread_create.c:304
      #13 0x00007fdc71e5720d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112

      Stack trace from:

      revision-id: sergii@pisem.net-20140805163520-tz0w14h8uju0ti9n
      revno: 4330
      branch-nick: 10.0

      To reproduce:

      • put the attached set of binary logs into the master datadir;
      • start master with log-bin=mysql-bin;
      • start slave with --slave-skip-errors=1049,1305,1539,1505,1317 --slave-parallel-threads=8;
      • start replication with MASTER_USE_GTID = current_pos;
      • wait.

      Note: most likely not all slave-skip-errors values are needed, but some are.

      The failure happens sporadically in different places over the course of replicating the binary logs. For me it happens 2-3 times before the slave catches up with the master.

      The binary logs were created during a usual stress test on Power 8 machine and were not tampered with anyhow.

      Could not reproduce without parallel replication.

        Attachments

          Activity

            People

            Assignee:
            knielsen Kristian Nielsen
            Reporter:
            elenst Elena Stepanova
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: