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

Sequence of Galera tests fails on Debian 11 (uring builds) with timeout or long semaphore wait

    XMLWordPrintable

Details

    Description

      The sequence of tests below fails fairly reliably (although not 100% deterministically) with either timeout or innodb_fatal_semaphore_wait_threshold on the last test. It may be not the shortest sequence but I couldn't reduce it any further in reasonable time.
      In CIs and CI VMs, it only happens on Debian 11, both x86_64 and aarch64. It is also reproducible on other Debian 11 machines.
      It appears to be related to the use of liburing: I cannot reproduce it on a build without liburing but it happens reliably on a build with liburing, otherwise same build options, same 10.8 revision.
      Reproducible both in shm and on disk.

      Normally the last test takes only a few seconds, so you don't have to wait very long to know that you have hit the problem.

      10.8 0e0a3580

      perl mysql-test-run.pl --noreorder  galera.galera_strict_require_innodb galera.galera_strict_require_primary_key galera.galera_suspend_slave galera.galera_toi_alter_auto_increment galera.galera_toi_ddl_sequential galera.galera_toi_drop_database galera.galera_toi_ftwrl galera.galera_toi_lock_exclusive galera.galera_toi_lock_shared galera.galera_transaction_read_only galera.galera_truncate galera.galera_var_auto_inc_control_off galera.galera_var_certify_nonPK_off galera.galera_var_desync_on --testcase-timeout=2
       
      galera.galera_var_desync_on 'innodb'     [ fail ]  timeout after 120 seconds
              Test ended at 2022-06-02 01:29:22
       
      Test case timeout after 120 seconds
       
      == /mnt8t/bld/10.8-uring/mysql-test/var/log/galera_var_desync_on.log == 
      INSERT INTO t1 VALUES (9);
      INSERT INTO t1 VALUES (10);
      connection node_2;
      SET SESSION wsrep_sync_wait = 0;
      SELECT COUNT(*) = 1 FROM t1;
      COUNT(*) = 1
      1
      UNLOCK TABLES;
      SET SESSION wsrep_sync_wait = 1;
      SELECT COUNT(*) = 10 FROM t1;
      COUNT(*) = 10
      1
      connection node_1;
      INSERT INTO t1 VALUES (11);
      connection node_2;
      SELECT COUNT(*) = 11 FROM t1;
      COUNT(*) = 11
      1
      CALL mtr.add_suppression("Protocol violation");
      DROP TABLE t1;
      

      Attachments

        Issue Links

          Activity

            People

              marko Marko Mäkelä
              elenst Elena Stepanova
              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.