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

MariaDB 10.0 slave SQL thread slower than MariaDB 5.5

    Details

    • Type: Bug
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: 10.0.9
    • Fix Version/s: 10.0
    • Component/s: None
    • Labels:
      None
    • Environment:
      CentOS 6.5 (tests done on EC2 m1.xlarge instance).

      Description

      MariaDB 10.0.9 is slower to execute a relay long than MariaDB 5.5. My tests were performed by performing millions of autocommitted single-statement inserts. I took the binary log from a MySQL 5.5.36 instance and used that as the relay log for a variety of different versions of various products.

      CREATE TABLE test.`t1` (
        `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
        `pid` bigint(20) unsigned DEFAULT NULL,
        `iter` bigint(20) unsigned DEFAULT NULL,
        `v` bigint(20) DEFAULT NULL,
        PRIMARY KEY (`id`)
      ) ENGINE=InnoDB;
      

      I tested using both ROW and MIXED binlog formats, and I found that the MariaDB 10.0 instance was 10-20% slower than the MariaDB 5.5 instance.

      I see approximately 9500 inserts/s for MariaDB 5.5.36 and approximately 8000 inserts/s for MariaDB 10.0.9.

      The binary logs I've used can be found at ftp://ftp.skysql.com/downloads/binlogs_for_slave_comparison.tgz

      I've started MariaDB like this for both versions:

      mysqld_safe --no-defaults --datadir="$PWD/data/" --socket="$PWD/data/mysql.sock" --server-id=1 --log-bin --binlog-format=mixed --innodb-flush-log-at-trx-commit=2 --sync-binlog=0 --innodb-buffer-pool-size=12GB --innodb-log-file-size=2000M --skip-name-resolve --relay-log=relay --replicate-same-server-id --relay-log-purge=0 --skip-slave-start &
      

      I place the binary log I want to use for testing in the datadir as relay.000001 and start replication like this:

      stop slave; truncate t1; change master to master_host='null', master_user='null', relay_log_file='relay.000001', relay_log_pos=4; start slave sql_thread; select sleep(1); show slave status\G
      

        Gliffy Diagrams

          Attachments

            Activity

            There are no comments yet on this issue.

              People

              • Assignee:
                knielsen Kristian Nielsen
                Reporter:
                kolbe Kolbe Kegel
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated: