Switching to Debian 7 and percona-mysql-5.5.16 amd64 from percona repository
started experiencing unusual slaves slowdowns. After some research, I found
that there are some strange locks happening during "drop table" (already
emptied). While not discussing why drop empty table on server with big (50Gb)
innodb buffer pool slowing down servers drastically, I created a workaround
adding "engine=myisam" to /usr/local/bin/apply_diff_relay_logs line 370:
"$_mysql --user=$_escaped_slave_user --password=$_escaped_slave_pass
--host=$opt{slave_ip} --port=$opt{slave_port} -e \"set sql_log_bin=0; create
table if not exists mysql.apply_diff_relay_logs_test(id int) engine=myisam;
insert into mysql.apply_diff_relay_logs_test values(1); update
mysql.apply_diff_relay_logs_test set id=id+1 where id=1; delete from
mysql.apply_diff_relay_logs_test; drop table
mysql.apply_diff_relay_logs_test;\""
After that, problem has gone as expected.
Probably this change could be useful in main code.
Debian 7.6, linux 3.2.58, mha-node 0.56, percona-mysql-5.5.16 x64
Original issue reported on code.google.com by mikhail....@ask.fm on 26 Sep 2014 at 2:37
Original issue reported on code.google.com by
mikhail....@ask.fm
on 26 Sep 2014 at 2:37