MySQL Replication – Duplicate Delete Query in Binary Log of MySQL Master

MySQLreplication

We are facing a strange problem, while replicating data from master to slave. Same data is being deleted twice in log (however, only one row is deleted and one time), due to which we are getting error while replicating:

# at 28651234
#150423 12:21:03 server id 5170  end_log_pos 28651303 CRC32 0x0b496431  Delete_rows: table id 73 flags: STMT_END_F
### DELETE FROM `oauth`.`AccessToken_scopes`
### WHERE
###   @1=1040103520
###   @2='wallet'
### DELETE FROM `oauth`.`AccessToken_scopes`
### WHERE
###   @1=1040103520
###   @2='wallet'

To avoid this,we currently have added below parameter in my.cnf file:

slave-skip-errors

Best Answer

slave-skip-errors can hide even serious errors; don't do it.

Turn on the "general log" briefly. This should capture a little more info about where the duplicate DELETE is coming from. One of two things will happen:

  • There will be two DELETEs in the general log, too. This will point at the application for issuing the delete twice.
  • There will be one in the general log but two in the binlog. In this case, move on to the next step.

Do you have the binlog for replication? If so, turn on the general log on a Slave to see if the duplicate stuff in the binlog really represents two DELETEs, not just some kind of stuttering in mysqlbinlog.

In any case file a bug report at bugs.mysql.com; the different paths give you different ways to complain.