pinot icon indicating copy to clipboard operation
pinot copied to clipboard

Adding v1 operator ARRAY_JOIN

Open xiangfu0 opened this issue 2 months ago • 1 comments

  • Extend the SQL parser, PinotQuery thrift schema, and request contexts with ArrayJoin* objects and parsing logic for the new ARRAY JOIN syntax.
  • Add integration with the planner and execution layer: include ARRAY JOIN expressions in projection planning and introduce an ArrayJoinOperator placeholder that currently delegates to its child.
  • Cover the new behavior with parser/unit tests plus an integration test exercising ARRAY JOIN queries.

xiangfu0 avatar Nov 11 '25 04:11 xiangfu0

Codecov Report

:x: Patch coverage is 65.71429% with 48 lines in your changes missing coverage. Please review. :white_check_mark: Project coverage is 63.21%. Comparing base (ba01450) to head (874617a). :warning: Report is 3 commits behind head on master.

Files with missing lines Patch % Lines
...not/core/operator/transform/ArrayJoinOperator.java 0.00% 17 Missing :warning:
...org/apache/pinot/sql/parsers/CalciteSqlParser.java 76.92% 5 Missing and 7 partials :warning:
...va/org/apache/pinot/core/plan/ProjectPlanNode.java 45.00% 8 Missing and 3 partials :warning:
.../sql/parsers/parser/SqlArrayJoinTableFunction.java 46.15% 7 Missing :warning:
...t/core/query/request/context/ArrayJoinContext.java 91.66% 1 Missing :warning:
Additional details and impacted files
@@             Coverage Diff              @@
##             master   #17182      +/-   ##
============================================
- Coverage     63.22%   63.21%   -0.01%     
- Complexity     1428     1429       +1     
============================================
  Files          3117     3120       +3     
  Lines        184413   184582     +169     
  Branches      28283    28318      +35     
============================================
+ Hits         116588   116686      +98     
- Misses        58839    58892      +53     
- Partials       8986     9004      +18     
Flag Coverage Δ
custom-integration1 ?
integration 100.00% <ø> (ø)
integration1 100.00% <ø> (ø)
integration2 0.00% <ø> (ø)
java-11 63.17% <65.71%> (-0.01%) :arrow_down:
java-21 63.16% <65.71%> (-0.01%) :arrow_down:
temurin 63.21% <65.71%> (-0.01%) :arrow_down:
unittests 63.21% <65.71%> (-0.01%) :arrow_down:
unittests1 56.10% <65.71%> (-0.03%) :arrow_down:
unittests2 33.64% <9.28%> (-0.01%) :arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

:rocket: New features to boost your workflow:
  • :package: JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

codecov-commenter avatar Nov 11 '25 10:11 codecov-commenter