Details
-
Bug
-
Status: Closed (View Workflow)
-
Minor
-
Resolution: Fixed
-
1.4.3
-
None
Description
If the binlog router's slave is not started after executing CHANGE MASTER, then the configured value of Master_log_file is lost if the maxscale service is restarted.
To reproduce, let's say that I have the following MaxScale configuration file:
[maxscale]
|
threads=4
|
log_debug=1
|
log_trace=1
|
|
[Replication]
|
type=service
|
router=binlogrouter
|
version_string=10.0.25-log
|
user=repl
|
passwd=password
|
router_options=server_id=2,binlogdir=/var/log/binlogs
|
|
[Replication Listener]
|
type=listener
|
service=Replication
|
protocol=MySQLClient
|
port=3306
|
When I start MaxScale up with this configuration file, I log into the replication listener, and I execute CHANGE MASTER in the following way:
$ mysql -u repl -ppassword -h 127.0.0.1
|
Welcome to the MariaDB monitor. Commands end with ; or \g.
|
Your MySQL connection id is 1657
|
Server version: 10.0.25-log
|
|
Copyright (c) 2000, 2015, Oracle, MariaDB Corporation Ab and others.
|
|
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
|
|
MySQL [(none)]> CHANGE MASTER TO Master_host='172.31.32.144', Master_log_file='mariadb.000026', Master_user='repl', Master_password='password';
|
Query OK, 0 rows affected (0.00 sec)
|
Note that I did not execute START SLAVE.
Now let's say that I restart MaxScale without starting the slave first:
service maxscale restart
|
At this point, Master_log_file will be reset to mariadb.000001 according to the log:
2016-10-27 12:10:41 notice : Validating binlog file 'mariadb.000001' ...
|
2016-10-27 12:10:41 info : Current binlog file is mariadb.000001, current pos is 4
|
And if this older binlog file doesn't exist on the master, then MaxScale will fail:
2016-10-27 12:18:30 error : Error packet in binlog stream.mariadb.000001 @ 4.
|
2016-10-27 12:18:30 error : Replication: Master connection error 1236 'Could not find first log file name in binary log index file' in state 'Slave stopped', attempting reconnect to master 172.31.32.144:3306
|
2016-10-27 12:18:30 notice : Replication: Master 172.31.32.144 disconnected after 0 seconds. 1 events read.
|