Loading sharding-core/sharding-core-optimize/src/main/java/org/apache/shardingsphere/core/optimize/engine/sharding/insert/InsertOptimizeEngine.java +6 −7 Original line number Original line Diff line number Diff line Loading @@ -18,7 +18,6 @@ package org.apache.shardingsphere.core.optimize.engine.sharding.insert; package org.apache.shardingsphere.core.optimize.engine.sharding.insert; import com.google.common.base.Optional; import com.google.common.base.Optional; import com.google.common.base.Strings; import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor; import org.apache.shardingsphere.core.optimize.GeneratedKey; import org.apache.shardingsphere.core.optimize.GeneratedKey; import org.apache.shardingsphere.core.optimize.condition.ShardingCondition; import org.apache.shardingsphere.core.optimize.condition.ShardingCondition; Loading Loading @@ -148,17 +147,17 @@ public final class InsertOptimizeEngine implements OptimizeEngine { } } private void fillWithQueryAssistedColumn(final InsertColumnValues insertColumnValues, final int insertColumnValueIndex) { private void fillWithQueryAssistedColumn(final InsertColumnValues insertColumnValues, final int insertColumnValueIndex) { String assistedColumnName = null; Collection<String> assistedColumnNames = new LinkedList<>(); for (String each : insertColumnValues.getColumnNames()) { for (String each : insertColumnValues.getColumnNames()) { InsertColumnValue insertColumnValue = insertColumnValues.getColumnValues().get(insertColumnValueIndex); InsertColumnValue insertColumnValue = insertColumnValues.getColumnValues().get(insertColumnValueIndex); Optional<String> assistedColumnNameOptional = shardingRule.getShardingEncryptorEngine().getAssistedQueryColumn(insertStatement.getTables().getSingleTableName(), each); Optional<String> assistedColumnName = shardingRule.getShardingEncryptorEngine().getAssistedQueryColumn(insertStatement.getTables().getSingleTableName(), each); if (assistedColumnNameOptional.isPresent()) { if (assistedColumnName.isPresent()) { assistedColumnName = assistedColumnNameOptional.get(); assistedColumnNames.add(assistedColumnName.get()); fillWithColumnValue(insertColumnValue, (Comparable<?>) insertColumnValue.getColumnValue(each)); fillWithColumnValue(insertColumnValue, (Comparable<?>) insertColumnValue.getColumnValue(each)); } } } } if (!Strings.isNullOrEmpty(assistedColumnName)) { if (!assistedColumnNames.isEmpty()) { insertColumnValues.getColumnNames().add(assistedColumnName); insertColumnValues.getColumnNames().addAll(assistedColumnNames); } } } } Loading Loading
sharding-core/sharding-core-optimize/src/main/java/org/apache/shardingsphere/core/optimize/engine/sharding/insert/InsertOptimizeEngine.java +6 −7 Original line number Original line Diff line number Diff line Loading @@ -18,7 +18,6 @@ package org.apache.shardingsphere.core.optimize.engine.sharding.insert; package org.apache.shardingsphere.core.optimize.engine.sharding.insert; import com.google.common.base.Optional; import com.google.common.base.Optional; import com.google.common.base.Strings; import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor; import org.apache.shardingsphere.core.optimize.GeneratedKey; import org.apache.shardingsphere.core.optimize.GeneratedKey; import org.apache.shardingsphere.core.optimize.condition.ShardingCondition; import org.apache.shardingsphere.core.optimize.condition.ShardingCondition; Loading Loading @@ -148,17 +147,17 @@ public final class InsertOptimizeEngine implements OptimizeEngine { } } private void fillWithQueryAssistedColumn(final InsertColumnValues insertColumnValues, final int insertColumnValueIndex) { private void fillWithQueryAssistedColumn(final InsertColumnValues insertColumnValues, final int insertColumnValueIndex) { String assistedColumnName = null; Collection<String> assistedColumnNames = new LinkedList<>(); for (String each : insertColumnValues.getColumnNames()) { for (String each : insertColumnValues.getColumnNames()) { InsertColumnValue insertColumnValue = insertColumnValues.getColumnValues().get(insertColumnValueIndex); InsertColumnValue insertColumnValue = insertColumnValues.getColumnValues().get(insertColumnValueIndex); Optional<String> assistedColumnNameOptional = shardingRule.getShardingEncryptorEngine().getAssistedQueryColumn(insertStatement.getTables().getSingleTableName(), each); Optional<String> assistedColumnName = shardingRule.getShardingEncryptorEngine().getAssistedQueryColumn(insertStatement.getTables().getSingleTableName(), each); if (assistedColumnNameOptional.isPresent()) { if (assistedColumnName.isPresent()) { assistedColumnName = assistedColumnNameOptional.get(); assistedColumnNames.add(assistedColumnName.get()); fillWithColumnValue(insertColumnValue, (Comparable<?>) insertColumnValue.getColumnValue(each)); fillWithColumnValue(insertColumnValue, (Comparable<?>) insertColumnValue.getColumnValue(each)); } } } } if (!Strings.isNullOrEmpty(assistedColumnName)) { if (!assistedColumnNames.isEmpty()) { insertColumnValues.getColumnNames().add(assistedColumnName); insertColumnValues.getColumnNames().addAll(assistedColumnNames); } } } } Loading