1. 19 Jul, 2019 6 commits
  2. 18 Jul, 2019 12 commits
  3. 17 Jul, 2019 1 commit
    • Julius Goryavsky's avatar
      MDEV-18565: Galera mtr-suite fails if galera library is not installed · 4e02e502
      Julius Goryavsky authored
      Currently, running mtr with an incorrect (for example, new or
      obsolete) version of wsrep_provider (for example, with the 26
      version of libgalera_smm.so) leads to the failure of tests in
      several suites with vague error diagnostics.
      
      As for the galera_3nodes suite, the mtr also does not effectively
      check all the prerequisites after merge with MDEV-18426 fixes.
      For example, tests that using mariabackup do not check for presence
      of ss and socat/nc. This is due to improper handling of relative
      paths in mtr scripts.
      
      In addition, some tests in different suites can be run without
      setting the environment variables such as MTR_GALERA_TFMT, XBSTREAM,
      and so on.
      
      To eliminate all these issues, this patch makes the following changes:
      
      1. Added auxiliary wsrep_mtr_check utility (which located in the
      mysql-test/lib/My/SafeProcess subdirectory), which compares the
      versions of the wsrep API that used by the server and by the wsrep
      provider library, and it does this comparison safely, without
      accessing the API if the versions do not match.
      
      2. All checks related to the presence of mariabackup and utilities
      that necessary for its operation transferred from the local directories
      of different mtr suites (from the suite.pm files) to the main suite.pm
      file. This not only reduces the amount of code and eliminates duplication
      of identical code fragments, but also avoids problems due to the inability
      of mtr to consider relative paths to include files when checking skip
      combinations.
      
      3. Setting the values of auxiliary environment variables that
      are necessary for Galera, SST scripts and mariabackup (to work
      properly) is moved to the main mysql-test-run.pl script, so as
      not to duplicate this code in different suites, and to avoid
      partial corrections of the same errors for different suites
      (while other suites remain uncorrected).
      
      4. Fixed duplication of the have_file_key_management.inc and
      have_filekeymanagement.inc files between different suites,
      these checks are also transferred to the top level.
      
      5. Added garbd presence check and garbd path variable.
      
      https://jira.mariadb.org/browse/MDEV-18565
      4e02e502
  4. 16 Jul, 2019 6 commits
  5. 15 Jul, 2019 4 commits
    • Sergei Petrunia's avatar
      Disable rocksdb.shutdown test · d2f094d9
      Sergei Petrunia authored
      It was introduced by this patch in fb/mysql-5.6:
      Author: Yoshinori Matsunobu <yoshinori@fb.com>
      Date:   Mon Jun 10 14:09:28 2019 -0700
      
          Extending SHUTDOWN query to support read_only/aborting
      
          Summary:
          This diff extends SHUTDOWN query to support the following
          features.
          - Aborting with any specified exit code (range is 0..255).
          If nothing is specified or 0 is given, it does default clean
          shutdown. If 1+ is given, exits with the given error code
          immediately. This is helpful to shutting down instance
          even if it is stuck somewhere.
      
      MariaDB doesn't support SHUTDOWN statement or have any other way
      to exit the server process.
      d2f094d9
    • Sergei Petrunia's avatar
      1da84412
    • Sujatha's avatar
      MDEV-11154: Write_on_release_cache(log_event.cc) function will not write... · 10ebdb7f
      Sujatha authored
      MDEV-11154: Write_on_release_cache(log_event.cc) function will not write "COMMIT", if use "mysqlbinlog ... | mysql ..."
      
      Problem:
      =======
      Executing command, "mysqlbinlog --read-from-remote-server --host='xx.xx.xx.xx'
      --port=3306 --user=xxx --password=xxx --database=mysql --to-last-log
      mysql-bin.000001 --start-position=1098699 --stop-never |mysql -uxxx -pxxx", we
      found that last data read from remote couldn't commit.
      
      Analysis:
      ========
      The purpose of 'Write_on_release_cache' is that the contents of the Cache will
      automatically be written to a dedicated result file on destruction. Flush
      operation on the result file is controlled by a flag 'FLUSH_F'. Events which
      require force flush upon their destruction will have to enable this
      'Write_on_release_cache::FLUSH_F'. At present the 'FLUSH_F' flag is defined as
      an enum as shown below.
      
      enum flag
      {
        FLUSH_F
      };
      
      Since 'FLUSH_F' is the first member without initialization it get the default
      value '0'. Because of this the following flush condition never succeeds.
      
      if (m_flags & FLUSH_F)
        fflush(m_file);
      
      At present the file gets flushed only during my_fclose(result_file) operation.
      When continuous streaming is enabled through --stop-never option it never gets
      flushed and hence events are not replicated.
      
      Fix:
      ===
      Initialize the enum value to non zero value.
      10ebdb7f
    • Jan Lindström's avatar
      MDEV-19746: Galera test failures because of wsrep_slave_threads identification · ec49976e
      Jan Lindström authored
      Problem was that tests select INFORMATION_SCHEMA.PROCESSLIST processes
      from user system user and empty state. Thus, there is not clear
      state for slave threads.
      
      Changes:
      - Added new status variables that store current amount of applier threads
      (wsrep_applier_thread_count) and rollbacker threads
      (wsrep_rollbacker_thread_count). This will make clear how many slave threads
      of certain type there is.
      - Added THD state "wsrep applier idle" when applier slave thread is
      waiting for work. This makes finding slave/applier threads easier.
      - Added force-restart option for mtr to always restart servers between tests
      to avoid race on start of the test
      - Added wait_condition_with_debug to wait until the passed statement returns
      true, or the operation times out. If operation times out, the additional error
      statement will be executed
      
      Changes to be committed:
      	new file:   mysql-test/include/force_restart.inc
      	new file:   mysql-test/include/wait_condition_with_debug.inc
      	modified:   mysql-test/mysql-test-run.pl
      	modified:   mysql-test/suite/galera/disabled.def
      	modified:   mysql-test/suite/galera/r/MW-336.result
      	modified:   mysql-test/suite/galera/r/galera_kill_applier.result
      	modified:   mysql-test/suite/galera/r/galera_var_slave_threads.result
      	new file:   mysql-test/suite/galera/t/MW-336.cnf
      	modified:   mysql-test/suite/galera/t/MW-336.test
      	modified:   mysql-test/suite/galera/t/galera_kill_applier.test
      	modified:   mysql-test/suite/galera/t/galera_parallel_autoinc_largetrx.test
      	modified:   mysql-test/suite/galera/t/galera_parallel_autoinc_manytrx.test
      	modified:   mysql-test/suite/galera/t/galera_var_slave_threads.test
      	modified:   mysql-test/suite/wsrep/disabled.def
      	modified:   mysql-test/suite/wsrep/r/variables.result
      	modified:   mysql-test/suite/wsrep/t/variables.test
      	modified:   sql/mysqld.cc
      	modified:   sql/wsrep_mysqld.cc
      	modified:   sql/wsrep_mysqld.h
      	modified:   sql/wsrep_thd.cc
      	modified:   sql/wsrep_var.cc
      ec49976e
  6. 14 Jul, 2019 2 commits
  7. 12 Jul, 2019 1 commit
    • Sergei Petrunia's avatar
      MDEV-14455: rocksdb.2pc_group_commit failed in buildbot · fbbc2354
      Sergei Petrunia authored
      Use RocksDB debug sync points to introduce a sync delay. This
      commits to get grouped even when the datadir is on ramdisk.
      
      For some unclear reason the effect is visible on write_prepared
      but not write_committed, so run the test only with write_prepared.
      fbbc2354
  8. 11 Jul, 2019 2 commits
  9. 10 Jul, 2019 6 commits