From e367c8e627bc6fee07bf56173ec26d7601fa5f75 Mon Sep 17 00:00:00 2001 From: guoaomen Date: Tue, 29 Nov 2022 10:36:16 +0800 Subject: [PATCH] fix: type conversion error --- .../dble/route/parser/druid/impl/DruidSelectParser.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/actiontech/dble/route/parser/druid/impl/DruidSelectParser.java b/src/main/java/com/actiontech/dble/route/parser/druid/impl/DruidSelectParser.java index 08b148127..bbab158de 100644 --- a/src/main/java/com/actiontech/dble/route/parser/druid/impl/DruidSelectParser.java +++ b/src/main/java/com/actiontech/dble/route/parser/druid/impl/DruidSelectParser.java @@ -484,10 +484,11 @@ public class DruidSelectParser extends DefaultDruidParser { } private boolean hasShardingColumnWithAlia(BaseTableConfig tc, String columnName, Map aliaColumns) { - String shardingColumn = ((ShardingTableConfig) tc).getShardingColumn(); - boolean isShardingColumn = tc instanceof ShardingTableConfig && columnName.equalsIgnoreCase(shardingColumn); + String shardingColumn = ""; + boolean isShardingColumn = tc instanceof ShardingTableConfig && columnName.equalsIgnoreCase(shardingColumn = ((ShardingTableConfig) tc).getShardingColumn()); if (!isShardingColumn) { - Optional> alias = aliaColumns.entrySet().stream().filter(c -> c.getKey().toUpperCase().equals(shardingColumn)).findFirst(); + String finalShardingColumn = shardingColumn; + Optional> alias = aliaColumns.entrySet().stream().filter(c -> c.getKey().toUpperCase().equals(finalShardingColumn)).findFirst(); if (alias.isPresent()) { isShardingColumn = tc instanceof ShardingTableConfig && alias.get().getValue().equalsIgnoreCase(columnName); }