|
@@ -553,21 +553,11 @@ public abstract class AbstractDatabaseConnector extends AbstractConnector implem
|
|
|
|
|
|
private void forceUpdate(Result result, DatabaseConnectorMapper connectorMapper, WriterBatchConfig config, Field pkField,
|
|
|
Map row) {
|
|
|
- // 不存在转insert
|
|
|
- if (isUpdate(config.getEvent())) {
|
|
|
- String queryCount = config.getCommand().get(ConnectorConstant.OPERTION_QUERY_COUNT_EXIST);
|
|
|
- if (!existRow(connectorMapper, queryCount, row.get(pkField.getName()))) {
|
|
|
- logger.warn("{}表执行{}失败, 尝试执行{}, {}", config.getTableName(), config.getEvent(), ConnectorConstant.OPERTION_INSERT, row);
|
|
|
- writer(result, connectorMapper, config, pkField, row, ConnectorConstant.OPERTION_INSERT);
|
|
|
- }
|
|
|
- return;
|
|
|
- }
|
|
|
-
|
|
|
- // 存在转update
|
|
|
- if (isInsert(config.getEvent())) {
|
|
|
- logger.warn("{}表执行{}失败, 尝试执行{}, {}", config.getTableName(), config.getEvent(), ConnectorConstant.OPERTION_UPDATE, row);
|
|
|
- writer(result, connectorMapper, config, pkField, row, ConnectorConstant.OPERTION_UPDATE);
|
|
|
- }
|
|
|
+ // 存在执行覆盖更新,否则写入
|
|
|
+ final String queryCount = config.getCommand().get(ConnectorConstant.OPERTION_QUERY_COUNT_EXIST);
|
|
|
+ final String event = existRow(connectorMapper, queryCount, row.get(pkField.getName())) ? ConnectorConstant.OPERTION_UPDATE : ConnectorConstant.OPERTION_INSERT;
|
|
|
+ logger.warn("{}表执行{}失败, 重新执行{}, {}", config.getTableName(), config.getEvent(), event, row);
|
|
|
+ writer(result, connectorMapper, config, pkField, row, event);
|
|
|
}
|
|
|
|
|
|
private void writer(Result result, DatabaseConnectorMapper connectorMapper, WriterBatchConfig config, Field pkField, Map row,
|