Пример #1
0
  @Override
  public boolean doWrite(ColumnTypeHelper helper, WriteRowsEvent event) {
    try {
      boolean doOne = false;
      for (int i = 0; i < tables.size(); i++) {
        RedisSchnauzer table = tables.get(i);
        if (StrHelp.notEqual(helper.databaseName, masterDb.dbname)) continue;
        if (StrHelp.notEqual(helper.tableName, table.getMasterTableName())) continue;
        doOne = true;
        try {
          innerWrite(helper, event, table);
        } catch (Exception e) {
          ErrorHelper.errExit(
              "[" + table.table.SlaveKey + "]" + Infos.DoInsert + Infos.Failed + e.getMessage());
        }
      }

      if (!doOne)
        dbhelper.setBinlogKey(
            getBinLogName(helper), Long.toString(helper.position), helper.tableName);
    } catch (Exception e) {
      ErrorHelper.errExit(Infos.RepFailed + e.getMessage());
    }
    return true;
  }