924060929 commented on code in PR #11209: URL: https://github.com/apache/doris/pull/11209#discussion_r934310551
########## fe/fe-core/src/main/java/org/apache/doris/nereids/parser/LogicalPlanBuilder.java: ########## @@ -532,13 +534,23 @@ public List<Expression> visitNamedExpressionSeq(NamedExpressionSeqContext namedC * @return List of OrderKey */ @Override - public List<OrderKey> visitQueryOrganization(QueryOrganizationContext ctx) { + public QueryOrganization visitQueryOrganization(QueryOrganizationContext ctx) { return ParserUtils.withOrigin(ctx, () -> { + List<OrderKey> orderKeys; if (ctx.sortClause().ORDER() != null) { - return visit(ctx.sortClause().sortItem(), OrderKey.class); + orderKeys = visit(ctx.sortClause().sortItem(), OrderKey.class); } else { - return ImmutableList.of(); + orderKeys = ImmutableList.of(); } + long limit = Long.MAX_VALUE; Review Comment: You may have misunderstood, I means that local limit variable can set to Optional<Limit>, and if it's empty, we can return originPlan without build a LogicalLimit plan, otherwise we can build LogicalLimit and wrap the originPlan as child. In the LogicalLimit, the limit field also is `long limit`, no Optional. ########## fe/fe-core/src/main/antlr4/org/apache/doris/nereids/DorisParser.g4: ########## @@ -119,6 +119,12 @@ sortItem : expression ordering = (ASC | DESC)? ; +limitClause + : (LIMIT limit=INTEGER_VALUE)? + | (LIMIT limit=INTEGER_VALUE OFFSET offset=INTEGER_VALUE)? + | (LIMIT offset=INTEGER_VALUE COMMA limit=INTEGER_VALUE)? + ; Review Comment: this change is not for save null-checking efforts, the point is: 1. don't use Long.MAX_VALUE to implicitly represents missing limitClause 2. if limit isn't exist, we shouldn't create LogicalLimit -- 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: commits-unsubscr...@doris.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org