@@ -238,7 +238,7 @@ public static Pair<List<AggregationBuilder>, OpenSearchAggregationResponseParser
238238 Set <Integer > aggPushed = aggPushedAndAggBuilder .getLeft ();
239239 AggregationBuilder pushedAggBuilder = aggPushedAndAggBuilder .getRight ();
240240 // The group-by list after removing pushed aggregations
241- groupList = groupList .stream ().filter (i -> !aggPushed .contains (i )).toList ();
241+ groupList = groupList .stream ().filter (i -> !aggPushed .contains (i )).collect ( Collectors . toList () );
242242 if (pushedAggBuilder != null ) {
243243 subBuilder = new Builder ().addAggregator (pushedAggBuilder );
244244 }
@@ -660,36 +660,47 @@ private static AutoDateHistogramAggregationBuilder analyzeAutoDateSpan(
660660 }
661661
662662 private static boolean isAutoDateSpan (RexNode rex ) {
663- return rex instanceof RexCall rexCall
664- && rexCall .getKind () == SqlKind .OTHER_FUNCTION
665- && rexCall .getOperator ().equals (WIDTH_BUCKET );
663+ if (rex instanceof RexCall ) {
664+ RexCall rexCall = (RexCall ) rex ;
665+ return rexCall .getKind () == SqlKind .OTHER_FUNCTION
666+ && rexCall .getOperator ().equals (WIDTH_BUCKET );
667+ }
668+ return false ;
666669 }
667670
668671 private static boolean isCase (RexNode rex ) {
669- return rex instanceof RexCall rexCall && rexCall .getKind () == SqlKind .CASE ;
672+ if (rex instanceof RexCall ) {
673+ RexCall rexCall = (RexCall ) rex ;
674+ return rexCall .getKind () == SqlKind .CASE ;
675+ }
676+ return false ;
670677 }
671678
672679 private static CompositeValuesSourceBuilder <?> createCompositeBucket (
673680 Integer groupIndex , Project project , AggregateAnalyzer .AggregateBuilderHelper helper ) {
674681 RexNode rex = project .getProjects ().get (groupIndex );
675682 String bucketName = project .getRowType ().getFieldNames ().get (groupIndex );
676- if (rex instanceof RexCall rexCall
677- && rexCall .getKind () == SqlKind .OTHER_FUNCTION
678- && rexCall .getOperator ().getName ().equalsIgnoreCase (BuiltinFunctionName .SPAN .name ())
679- && rexCall .getOperands ().size () == 3
680- && rexCall .getOperands ().get (0 ) instanceof RexInputRef rexInputRef
681- && rexCall .getOperands ().get (1 ) instanceof RexLiteral valueLiteral
682- && rexCall .getOperands ().get (2 ) instanceof RexLiteral unitLiteral ) {
683- return CompositeAggregationBuilder .buildHistogram (
684- bucketName ,
685- helper .inferNamedField (((RexCall ) rex ).getOperands ().get (0 )).getRootName (),
686- ((RexLiteral )((RexCall ) rex ).getOperands ().get (1 )).getValueAs (Double .class ),
687- SpanUnit .of (((RexLiteral )((RexCall ) rex ).getOperands ().get (2 )).getValueAs (String .class )),
688- MissingOrder .FIRST ,
689- helper .bucketNullable );
690- } else {
691- return createTermsSourceBuilder (bucketName , rex , helper );
683+ if (rex instanceof RexCall ) {
684+ RexCall rexCall = (RexCall ) rex ;
685+ if (rexCall .getKind () == SqlKind .OTHER_FUNCTION
686+ && rexCall .getOperator ().getName ().equalsIgnoreCase (BuiltinFunctionName .SPAN .name ())
687+ && rexCall .getOperands ().size () == 3
688+ && rexCall .getOperands ().get (0 ) instanceof RexInputRef
689+ && rexCall .getOperands ().get (1 ) instanceof RexLiteral
690+ && rexCall .getOperands ().get (2 ) instanceof RexLiteral ) {
691+ RexInputRef rexInputRef = (RexInputRef ) rexCall .getOperands ().get (0 );
692+ RexLiteral valueLiteral = (RexLiteral ) rexCall .getOperands ().get (1 );
693+ RexLiteral unitLiteral = (RexLiteral ) rexCall .getOperands ().get (2 );
694+ return CompositeAggregationBuilder .buildHistogram (
695+ bucketName ,
696+ helper .inferNamedField (rexInputRef ).getRootName (),
697+ valueLiteral .getValueAs (Double .class ),
698+ SpanUnit .of (unitLiteral .getValueAs (String .class )),
699+ MissingOrder .FIRST ,
700+ helper .bucketNullable );
701+ }
692702 }
703+ return createTermsSourceBuilder (bucketName , rex , helper );
693704 }
694705
695706 private static CompositeValuesSourceBuilder <?> createTermsSourceBuilder (
0 commit comments