-
Sujatha Sivakumar authored
FILTERED OUT Problem: ======== Replication slave choke on statement that should be ignored instead. Analysis: ======== There are two problems in the above mentioned bug. 1) Failed CREATE VIEW statement is written to the binary log 2) When a statement which has failed on master is received on slave with an expected error and if the statement is skipped on slave due to replication filter we still try to compare the expected error with actual error that happened on slave. Which is incorrect. Fix: === For the first problem since CREATE VIEW statement cannot result in partial view creation, it should not be binlogged if the view creation fails. We check for the return status of view creation and avoid writing to binlog on error. For the second problem if a statement with expected error is received on slave and only if the statement is not filtered then only compare it with actual error that happened on slave.
Sujatha Sivakumar authoredFILTERED OUT Problem: ======== Replication slave choke on statement that should be ignored instead. Analysis: ======== There are two problems in the above mentioned bug. 1) Failed CREATE VIEW statement is written to the binary log 2) When a statement which has failed on master is received on slave with an expected error and if the statement is skipped on slave due to replication filter we still try to compare the expected error with actual error that happened on slave. Which is incorrect. Fix: === For the first problem since CREATE VIEW statement cannot result in partial view creation, it should not be binlogged if the view creation fails. We check for the return status of view creation and avoid writing to binlog on error. For the second problem if a statement with expected error is received on slave and only if the statement is not filtered then only compare it with actual error that happened on slave.
Loading