From ef57857cb00e985413b7e831857e1d6b1215b50d Mon Sep 17 00:00:00 2001 From: yanhuqing Date: Tue, 8 Sep 2020 19:39:22 +0800 Subject: [PATCH] import from #1997 --- .../java/com/actiontech/dble/route/util/RouterUtil.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/actiontech/dble/route/util/RouterUtil.java b/src/main/java/com/actiontech/dble/route/util/RouterUtil.java index 12710eb44..f6eda99ae 100644 --- a/src/main/java/com/actiontech/dble/route/util/RouterUtil.java +++ b/src/main/java/com/actiontech/dble/route/util/RouterUtil.java @@ -399,8 +399,8 @@ public final class RouterUtil { String shardingNode = ruleCalculateSingleValue(schemaName, tc, value, clientCharset); routeNodeSet.add(shardingNode); } - } else if (!ignoreNull) { - String shardingNode = ruleCalculateSingleValue(schemaName, tc, columnRoute.getColValue(), clientCharset); + } else if (!ignoreNull || originValue instanceof Number) { + String shardingNode = ruleCalculateSingleValue(schemaName, tc, originValue, clientCharset); routeNodeSet.add(shardingNode); } } else if (columnRoute.getInValues() != null) { @@ -409,11 +409,11 @@ public final class RouterUtil { routeNodeSet.add(shardingNode); } } - ruleCalculateInValue(rrs, tc, columnRoute, routeNodeSet); + ruleCalculateRangeValue(rrs, tc, columnRoute, routeNodeSet); return routeNodeSet; } - private static void ruleCalculateInValue(RouteResultset rrs, ShardingTableConfig tc, ColumnRoute columnRoute, Set routeNodeSet) { + private static void ruleCalculateRangeValue(RouteResultset rrs, ShardingTableConfig tc, ColumnRoute columnRoute, Set routeNodeSet) { if (columnRoute.getRangeValues() != null) { Set rangeNodeSet = new LinkedHashSet<>(); boolean isFirst = true;