code: func (b *batchChecker) deleteDupKeys(ctx sessionctx.Context, t table.Table, rows [][]types.Datum) error {
  	cleanupRows, err := b.getKeysNeedCheck(ctx, t, rows)
  	if err != nil {
  		return err
  	}
  	for _, row := range cleanupRows {
  		if row.handleKey != nil {
  			delete(b.dupKVs, string(row.handleKey.newKV.key))
  		}
  		for _, uk := range row.uniqueKeys {
  			delete(b.dupKVs, string(uk.newKV.key))
  		}
  	}
  	return nil
  }
docs: // deleteDupKeys picks primary/unique key-value pairs from rows and remove them from the dupKVs