xiangfu0 commented on code in PR #18761:
URL: https://github.com/apache/pinot/pull/18761#discussion_r3435689413


##########
pinot-core/src/main/java/org/apache/pinot/core/data/manager/BaseTableDataManager.java:
##########
@@ -1043,6 +1051,12 @@ protected void reloadSegments(List<SegmentDataManager> 
segmentDataManagers, Inde
   protected void reloadSegment(SegmentDataManager segmentDataManager, 
IndexLoadingConfig indexLoadingConfig,
       boolean forceDownload)
       throws Exception {
+    // Reload path — always run full preprocess against the latest table 
config, regardless of the persisted
+    // tableIndexConfig.skipSegmentPreprocess. The override lives on this 
transient IndexLoadingConfig only and
+    // is discarded when the reload finishes. Centralizing it here means every 
public reload entry point
+    // (reloadSegment / reloadAllSegments / reloadSegments) gets the reload 
semantics for free; boot /
+    // state-transition loads continue to use a plain 
fetchIndexLoadingConfig() and honor skipSegmentPreprocess.
+    indexLoadingConfig.setOverrideSkipSegmentPreprocess(true);

Review Comment:
   This changes the contract of the existing 
`tableIndexConfig.skipSegmentPreprocess` flag for every reload path, not just 
the async index-materialization flow. Today a table that sets this flag can 
rely on reloads honoring the persisted forward-only load policy; after this 
override, any manual/controller reload will silently build all secondary 
indexes instead. That is a behavior change for an existing config with real 
CPU/disk blast radius for current deployments. Please gate the bypass behind a 
new explicit reload API/flag instead of unconditionally overriding the 
persisted setting here.



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