You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by su...@apache.org on 2023/05/17 12:35:10 UTC

[shardingsphere] branch master updated: Fix sonar issues on TranslatableTableScan (#25742)

This is an automated email from the ASF dual-hosted git repository.

sunnianjun pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git


The following commit(s) were added to refs/heads/master by this push:
     new ba02ca88090 Fix sonar issues on TranslatableTableScan (#25742)
ba02ca88090 is described below

commit ba02ca8809088bde277538c61fd22ac5437e6532
Author: Liang Zhang <zh...@apache.org>
AuthorDate: Wed May 17 20:35:03 2023 +0800

    Fix sonar issues on TranslatableTableScan (#25742)
---
 .../metadata/translatable/TranslatableTableScan.java     | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/kernel/sql-federation/optimizer/src/main/java/org/apache/shardingsphere/sqlfederation/optimizer/metadata/translatable/TranslatableTableScan.java b/kernel/sql-federation/optimizer/src/main/java/org/apache/shardingsphere/sqlfederation/optimizer/metadata/translatable/TranslatableTableScan.java
index 257716b5c9f..c0dee6e919e 100644
--- a/kernel/sql-federation/optimizer/src/main/java/org/apache/shardingsphere/sqlfederation/optimizer/metadata/translatable/TranslatableTableScan.java
+++ b/kernel/sql-federation/optimizer/src/main/java/org/apache/shardingsphere/sqlfederation/optimizer/metadata/translatable/TranslatableTableScan.java
@@ -53,7 +53,7 @@ import java.util.Map;
  * Translatable table scan.
  */
 @Getter
-public class TranslatableTableScan extends TableScan implements EnumerableRel {
+public final class TranslatableTableScan extends TableScan implements EnumerableRel {
     
     private final FederationTranslatableTable translatableTable;
     
@@ -147,7 +147,7 @@ public class TranslatableTableScan extends TableScan implements EnumerableRel {
     
     @Override
     public RelOptCost computeSelfCost(final RelOptPlanner planner, final RelMetadataQuery mq) {
-        return super.computeSelfCost(planner, mq).multiplyBy(((double) number + 2D) / ((double) table.getRowType().getFieldCount() + 2D));
+        return super.computeSelfCost(planner, mq).multiplyBy((number + 2D) / (table.getRowType().getFieldCount() + 2D));
     }
     
     @Override
@@ -182,10 +182,10 @@ public class TranslatableTableScan extends TableScan implements EnumerableRel {
     
     private void addFilter(final List<RexNode> filters, final String[] filterValues) {
         int index = 0;
-        for (RexNode filter : filters) {
-            RexCall call = (RexCall) filter;
+        for (RexNode each : filters) {
+            RexCall call = (RexCall) each;
             String columnMap = generateColumnMap(call);
-            filterValues[index] = filter + columnMap;
+            filterValues[index] = each + columnMap;
             index++;
         }
     }
@@ -196,13 +196,13 @@ public class TranslatableTableScan extends TableScan implements EnumerableRel {
         return result.toString();
     }
     
-    private void traverseRexCall(final RexCall call, final Map columnMap) {
+    private void traverseRexCall(final RexCall call, final Map<Integer, Integer> columnMap) {
         for (RexNode each : call.getOperands()) {
             if (each instanceof RexInputRef) {
                 RexInputRef reference = (RexInputRef) each;
                 String referenceName = reference.getName();
-                Integer columnId = Integer.valueOf(referenceName.replace("$", ""));
-                Integer columnType = translatableTable.getColumnType(columnId);
+                int columnId = Integer.parseInt(referenceName.replace("$", ""));
+                int columnType = translatableTable.getColumnType(columnId);
                 columnMap.put(columnId, columnType);
             }
             if (each instanceof RexCall) {