File tree Expand file tree Collapse file tree 1 file changed +9
-3
lines changed Expand file tree Collapse file tree 1 file changed +9
-3
lines changed Original file line number Diff line number Diff line change @@ -961,21 +961,27 @@ func (this *Applier) ApplyDMLEventQueries(dmlEvents [](*binlog.BinlogDMLEvent))
961
961
if err != nil {
962
962
return err
963
963
}
964
+
965
+ rollback := func (err error ) error {
966
+ tx .Rollback ()
967
+ return err
968
+ }
969
+
964
970
sessionQuery := `SET
965
971
SESSION time_zone = '+00:00',
966
972
sql_mode = CONCAT(@@session.sql_mode, ',STRICT_ALL_TABLES')
967
973
`
968
974
if _ , err := tx .Exec (sessionQuery ); err != nil {
969
- return err
975
+ return rollback ( err )
970
976
}
971
977
for _ , dmlEvent := range dmlEvents {
972
978
query , args , rowDelta , err := this .buildDMLEventQuery (dmlEvent )
973
979
if err != nil {
974
- return err
980
+ return rollback ( err )
975
981
}
976
982
if _ , err := tx .Exec (query , args ... ); err != nil {
977
983
err = fmt .Errorf ("%s; query=%s; args=%+v" , err .Error (), query , args )
978
- return err
984
+ return rollback ( err )
979
985
}
980
986
totalDelta += rowDelta
981
987
}
You can’t perform that action at this time.
0 commit comments