summaryrefslogtreecommitdiff
path: root/mysql-test/suite/galera_3nodes/t/galera_ist_gcache_rollover.test
diff options
context:
space:
mode:
authorNirbhay Choubey <nirbhay@mariadb.com>2016-06-29 16:50:53 -0400
committerNirbhay Choubey <nirbhay@mariadb.com>2016-08-21 16:20:09 -0400
commitcced23cf23f013bee9f137001f1d51142bace964 (patch)
tree1cf65c7953be7e9b4c3d54ad6ca9044772b2f744 /mysql-test/suite/galera_3nodes/t/galera_ist_gcache_rollover.test
parent415823a41cb7f302e9620f2b0fb57bcc69140d3f (diff)
downloadmariadb-git-cced23cf23f013bee9f137001f1d51142bace964.tar.gz
MDEV-9423: cannot add new node to the cluser: Binlog..
.. file '/var/log/mysql/mariadb-bin.000001' not found in binlog index, needed for recovery. Aborting. In Galera cluster, while preparing for rsync/xtrabackup based SST, the donor node takes an FTWRL followed by (REFRESH_ENGINE_LOG in rsync based state transfer and) REFRESH_BINARY_LOG. The latter rotates the binary log and logs Binlog_checkpoint_log_event corresponding to the penultimate binary log file into the new file. The checkpoint event for the current file is later logged synchronously by binlog_background_thread. Now, since in rsync/xtrabackup based snapshot state transfer methods, only the last binary log file is transferred to the joiner node; the file could get transferred even before the checkpoint event for the same file gets written to it. As a result, the joiner node would fail to start complaining about the missing binlog file needed for recovery. In order to fix this, a mechanism has been put in place to make REFRESH_BINARY_LOG operation wait for Binlog_checkpoint_log_event to be logged for the current binary log file if the node is part of a Galera cluster. As further safety, during rsync based state transfer the donor node now acquires and owns LOCK_log for the duration of file transfer during SST.
Diffstat (limited to 'mysql-test/suite/galera_3nodes/t/galera_ist_gcache_rollover.test')
0 files changed, 0 insertions, 0 deletions