krishan1390 opened a new pull request, #18792:
URL: https://github.com/apache/pinot/pull/18792

   The server's table-config/schema refresh message handler called 
`fetchIndexLoadingConfig()` purely for its cache-refresh side effect, 
discarding the returned config. That same `fetchIndexLoadingConfig()` is also 
invoked incidentally during segment state transitions and reloads, so a table 
data manager had no way to distinguish "the config actually changed" from "an 
index loading config was fetched while a transition was in progress."
   
   This adds a dedicated `onTableConfigOrSchemaRefresh()` callback on 
`TableDataManager`. The default implementation refreshes the cached table 
config and schema (preserving today's behavior), and the refresh message 
handler now invokes the callback instead of `fetchIndexLoadingConfig()`. The 
behavior of `fetchIndexLoadingConfig()` during transitions is unchanged. This 
gives implementations a hook that fires only on a genuine config/schema change.
   
   ## Testing
   
`BaseTableDataManagerTest#testOnTableConfigOrSchemaRefreshRefreshesCachedConfig`
 verifies the default callback refreshes the cached config/schema. Existing 
data-manager and server tests pass.
   
   🤖 Generated with [Claude Code](https://claude.com/claude-code)
   


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