Skip to content

Commit

Permalink
drainer: if all DML is filtered, return true ignore (#1320)
Browse files Browse the repository at this point in the history
close #1317
  • Loading branch information
lance6716 authored Sep 9, 2024
1 parent 62ff2df commit fc4e5d0
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 2 deletions.
4 changes: 3 additions & 1 deletion drainer/syncer.go
Original file line number Diff line number Diff line change
Expand Up @@ -660,7 +660,9 @@ func skipDMLEvent(pv *pb.PrewriteValue, schema *Schema, filter *filter.Filter, b
mutation.DeletedRows = mutation.DeletedRows[0:filteredDeleteIdx]
}

muts = append(muts, mutation)
if len(mutation.Sequence) > 0 {
muts = append(muts, mutation)
}
}

pv.Mutations = muts
Expand Down
2 changes: 1 addition & 1 deletion drainer/syncer_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ func (s *syncerSuite) TestFilterTable(c *check.C) {
// append one mutation that will not be dropped
var keepID int64 = 2
schema.tableIDToName[keepID] = TableName{Schema: "keep", Table: "keep"}
pv.Mutations = append(pv.Mutations, pb.TableMutation{TableId: keepID})
pv.Mutations = append(pv.Mutations, pb.TableMutation{TableId: keepID, Sequence: []pb.MutationType{pb.MutationType_Insert}})

ignore, err = skipDMLEvent(pv, schema, filter, nil)
c.Assert(err, check.IsNil)
Expand Down

0 comments on commit fc4e5d0

Please sign in to comment.