Skip to content

Star-tree Index Builder: Support dimension columns with raw forward index + shared dictionary#18637

Open
deepthi912 wants to merge 1 commit into
apache:masterfrom
deepthi912:startree-index-with-dictionary-clean
Open

Star-tree Index Builder: Support dimension columns with raw forward index + shared dictionary#18637
deepthi912 wants to merge 1 commit into
apache:masterfrom
deepthi912:startree-index-with-dictionary-clean

Conversation

@deepthi912
Copy link
Copy Markdown
Collaborator

As of today, we don't have a way to support StarTree index when the forward index is RAW, this PR adds in that support when the dictionary is separated out.

It also downstreams some properties needed for this to happen

… shared dictionary

Thread IndexLoadingConfig through MultipleTreesBuilder and SegmentPreProcessor so
the segment loader has the table's TableConfig available when the forward index is
backed by external storage. Add a raw-FI + separate-dictionary fast path in
PinotSegmentColumnReader.getDictId so the star-tree builder can resolve dictionary
IDs for such columns. Propagate segment-level custom metadata to remote index
buffers so downstream readers can locate their data source.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@deepthi912 deepthi912 requested a review from raghavyadav01 May 29, 2026 22:40
@deepthi912 deepthi912 added star-tree index Related to StarTree index index Related to indexing (general) labels May 29, 2026
@codecov-commenter
Copy link
Copy Markdown

codecov-commenter commented May 29, 2026

Codecov Report

❌ Patch coverage is 9.67742% with 28 lines in your changes missing coverage. Please review.
✅ Project coverage is 56.79%. Comparing base (3a6b694) to head (263f139).
⚠️ Report is 4 commits behind head on master.

Files with missing lines Patch % Lines
...ocal/segment/readers/PinotSegmentColumnReader.java 17.64% 13 Missing and 1 partial ⚠️
...ocal/startree/v2/builder/MultipleTreesBuilder.java 0.00% 10 Missing ⚠️
.../local/segment/store/SingleFileIndexDirectory.java 0.00% 4 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff              @@
##             master   #18637      +/-   ##
============================================
- Coverage     56.82%   56.79%   -0.04%     
- Complexity        1        7       +6     
============================================
  Files          2571     2576       +5     
  Lines        149210   149501     +291     
  Branches      24109    24154      +45     
============================================
+ Hits          84789    84907     +118     
- Misses        57249    57410     +161     
- Partials       7172     7184      +12     
Flag Coverage Δ
custom-integration1 100.00% <ø> (?)
integration 100.00% <ø> (?)
integration1 100.00% <ø> (?)
integration2 0.00% <ø> (?)
java-21 56.79% <9.67%> (-0.04%) ⬇️
temurin 56.79% <9.67%> (-0.04%) ⬇️
unittests 56.79% <9.67%> (-0.04%) ⬇️
unittests1 56.79% <9.67%> (-0.04%) ⬇️

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

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

index Related to indexing (general) star-tree index Related to StarTree index

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants