praveenc7 commented on issue #17821:
URL: https://github.com/apache/pinot/issues/17821#issuecomment-4020140663

   > Can you describe your use case? `enableDynamicStarTreeCreation` was 
introduced to reduce server overhead of re-creating the star-tree index, but 
when a new segment is created, it should take the latest star-tree config. Why 
do you want to keep old star-tree config?
   
     @Jackie-Jiang  We want to safely roll out star-tree indexes for a large 
REALTIME table. The plan is:                                                    
                                                                     
      
     1. Add starTreeIndexConfigs to the table config with 
enableDynamicStarTreeCreation=false                                             
                                                                                
       
     2. New segments from real-time ingestion naturally get star-tree at 
creation time
     3. Old segments remain unchanged — no server-side reload overhead or risk 
of OOM/disk spikes
     4. Once we've validated storage/performance impact on new segments, enable 
enableDynamicStarTreeCreation=true and trigger a reload to backfill old segments
   
     The issue is that PurgeTask rebuilds segments from scratch — it reads all 
records and creates a brand new segment via `SegmentIndexCreationDriverImpl`. 
Without this fix, SegmentGeneratorConfig(tableConfig, schema)
     unconditionally picks up starTreeIndexConfigs, adding star-tree to old 
segments that never had it during purge rebuilds.
   
    My understanding was that `enableDynamicStarTreeCreation`=false guards 
against star-tree modifications to existing segments regardless of the code 
path — consistent with how SegmentPreProcessor skips all star-tree
     processing (no add, no delete, no modify) when this flag is false. Is that 
not the intended semantics for this flag?
   


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


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to