As we all know that if the binlog format was changed to statement or mixed on slave( where gh-ost get binlog from, master 's binlog is mixed) when gh-ost is running , some data maybe lose.
In our company(Baidu.com), We want to avoid any risk of losing data when doing ddl on big tables. So we add binlog format checking logic to gh-ost.
The checking logic
We check every query event in the binlog stream , if the content in that event was a delete/insert/update/replace statement , we will issue an error and let gh-ost exit itself.
We want give the pr to gh-ost to make it more safety to do ddl
As we all know that if the binlog format was changed to statement or mixed on slave( where gh-ost get binlog from, master 's binlog is mixed) when gh-ost is running , some data maybe lose. In our company(Baidu.com), We want to avoid any risk of losing data when doing ddl on big tables. So we add binlog format checking logic to gh-ost.
The checking logic
We check every query event in the binlog stream , if the content in that event was a delete/insert/update/replace statement , we will issue an error and let gh-ost exit itself.
We want give the pr to gh-ost to make it more safety to do ddl
This is ours test