strongduanmu commented on code in PR #24647:
URL: https://github.com/apache/shardingsphere/pull/24647#discussion_r1141264117


##########
sql-parser/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/util/ColumnExtractor.java:
##########
@@ -69,7 +70,8 @@ public static Collection<ColumnSegment> extract(final 
ExpressionSegment expressi
      */
     public static void extractColumnSegments(final Collection<ColumnSegment> 
columnSegments, final Collection<WhereSegment> whereSegments) {
         for (WhereSegment each : whereSegments) {
-            for (AndPredicate andPredicate : 
ExpressionExtractUtil.getAndPredicates(each.getExpr())) {
+            final Collection<AndPredicate> result = new 
CopyOnWriteArraySet<>();

Review Comment:
   Please remove final for local param.



##########
sql-parser/statement/src/test/java/org/apache/shardingsphere/sql/parser/sql/common/util/ExpressionExtractUtilTest.java:
##########
@@ -58,12 +59,23 @@ public void assertExtractAndPredicatesAndCondition() {
         ExpressionSegment rightExpressionSegment = new 
BinaryOperationExpression(28, 39, columnSegment2, 
parameterMarkerExpressionSegment2, "=", "status=?");
         BinaryOperationExpression expression = new 
BinaryOperationExpression(28, 54, leftExpressionSegment, 
rightExpressionSegment, "AND", "order_id=? AND status=?");
         Collection<AndPredicate> actual = 
ExpressionExtractUtil.getAndPredicates(expression);
+        
         assertThat(actual.size(), is(1));
         AndPredicate andPredicate = actual.iterator().next();
         assertThat(andPredicate.getPredicates().size(), is(2));
         Iterator<ExpressionSegment> iterator = 
andPredicate.getPredicates().iterator();
         assertThat(iterator.next(), is(leftExpressionSegment));
         assertThat(iterator.next(), is(rightExpressionSegment));
+        
+        Collection<AndPredicate> result = new LinkedList<>();
+        Collection<AndPredicate> actual2 = 
ExpressionExtractUtil.getAndPredicates(result, expression);
+        assertThat(actual2.size(), is(1));
+        AndPredicate andPredicate2 = actual2.iterator().next();
+        assertThat(andPredicate2.getPredicates().size(), is(2));
+        Iterator<ExpressionSegment> iterator2 = 
andPredicate.getPredicates().iterator();
+        assertThat(iterator2.next(), is(leftExpressionSegment));
+        assertThat(iterator2.next(), is(rightExpressionSegment));
+        

Review Comment:
   Please remove useless blank line.



##########
sql-parser/statement/src/test/java/org/apache/shardingsphere/sql/parser/sql/common/util/ExpressionExtractUtilTest.java:
##########
@@ -58,12 +59,23 @@ public void assertExtractAndPredicatesAndCondition() {
         ExpressionSegment rightExpressionSegment = new 
BinaryOperationExpression(28, 39, columnSegment2, 
parameterMarkerExpressionSegment2, "=", "status=?");
         BinaryOperationExpression expression = new 
BinaryOperationExpression(28, 54, leftExpressionSegment, 
rightExpressionSegment, "AND", "order_id=? AND status=?");
         Collection<AndPredicate> actual = 
ExpressionExtractUtil.getAndPredicates(expression);
+        
         assertThat(actual.size(), is(1));
         AndPredicate andPredicate = actual.iterator().next();
         assertThat(andPredicate.getPredicates().size(), is(2));
         Iterator<ExpressionSegment> iterator = 
andPredicate.getPredicates().iterator();
         assertThat(iterator.next(), is(leftExpressionSegment));
         assertThat(iterator.next(), is(rightExpressionSegment));
+        

Review Comment:
   Please remove useless blank line.



##########
sql-parser/statement/src/test/java/org/apache/shardingsphere/sql/parser/sql/common/util/ExpressionExtractUtilTest.java:
##########
@@ -58,12 +59,23 @@ public void assertExtractAndPredicatesAndCondition() {
         ExpressionSegment rightExpressionSegment = new 
BinaryOperationExpression(28, 39, columnSegment2, 
parameterMarkerExpressionSegment2, "=", "status=?");
         BinaryOperationExpression expression = new 
BinaryOperationExpression(28, 54, leftExpressionSegment, 
rightExpressionSegment, "AND", "order_id=? AND status=?");
         Collection<AndPredicate> actual = 
ExpressionExtractUtil.getAndPredicates(expression);
+        

Review Comment:
   Please remove useless blank line.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to