navina opened a new pull request, #18316: URL: https://github.com/apache/pinot/pull/18316
## Summary - Extracts `doScatter()` + `ScatterResult` from `SingleConnectionBrokerRequestHandler` and adds a `mergeWithCachedDataTables()` no-op hook between scatter and reduce, allowing subclasses to inject cached DataTables before the reduce step - Adds `mergeWithCachedStreamingResponses()` no-op hook to `GrpcBrokerRequestHandler` for the streaming (GRPC) path - Fixes `dataTableToStreamingIterator()` to propagate `IOException` instead of swallowing it - Exposes `_brokerReduceService`, `_queryRouter`, `_failureDetector`, `_streamingReduceService`, `_streamingQueryClient` as `protected final` for subclass access - Adds `createGrpcBrokerRequestHandler()` factory method to `BaseBrokerStarter` - Adds unit tests for `dataTableToStreamingIterator` round-trip and error propagation No behaviour change on the OSS path — all hooks are no-ops by default. ## Test plan - [ ] `GrpcBrokerRequestHandlerTest` — 2 new unit tests pass - [ ] Existing broker tests unaffected 🤖 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]
