iwanttobepowerful commented on code in PR #4633:
URL: https://github.com/apache/calcite/pull/4633#discussion_r2629317845


##########
core/src/main/java/org/apache/calcite/sql2rel/RelDecorrelator.java:
##########
@@ -1044,30 +1059,7 @@ private static void shiftMapping(Map<Integer, Integer> 
mapping, int startIndex,
     return null;
   }
 
-  protected @Nullable Frame decorrelateFetchOneSort(Sort sort, final Frame 
frame) {
-    Frame aggFrame = decorrelateSortAsAggregate(sort, frame);
-    if (aggFrame != null) {
-      return aggFrame;
-    }
-    //
-    // Rewrite logic:
-    //
-    // If sorted without offset and fetch = 1 (enforced by the caller), 
rewrite the sort to be
-    //   Aggregate(group=(corVar.. , field..))
-    //     project(first_value(field) over (partition by corVar order by (sort 
collation)))
-    //       input
-    //
-    // 1. For the original sorted input, apply the FIRST_VALUE window function 
to produce
-    //    the result of sorting with LIMIT 1, and the same as the decorrelate 
of aggregate,
-    //    add correlated variables in partition list to maintain semantic 
consistency.
-    // 2. To ensure that there is at most one row of output for
-    //    any combination of correlated variables, distinct for correlated 
variables.
-    // 3. Since we have partitioned by all correlated variables
-    //    in the sorted output field window, so for any combination of 
correlated variables,
-    //    all other field values are unique. So the following two are 
equivalent:
-    //      - group by corVar1, covVar2, field1, field2
-    //      - any_value(fields1), any_value(fields2) group by corVar1, covVar2
-    //    Here we use the first.
+  protected @Nullable Frame decorrelateSortWithRowNumber(Sort sort, final 
Frame frame) {

Review Comment:
   This function should have been designed as private in the first place. It 
only has one caller.
   @mihaibudiu @suibianwanwank 



-- 
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