clintropolis opened a new pull request, #19409:
URL: https://github.com/apache/druid/pull/19409

   ### Description
   Follow-up to #19374, this PR lays the wire-format groundwork for partial 
load rules. Coordinators can now send wrapped load specs to historicals 
carrying scheme-specific partial-load metadata, historicals can advertise 
whether they understand the wrapper family, and a generic `PartialLoadProfile` 
data model threads the metadata through the load queue. The actual coordinator 
assignment logic (fingerprint-aware replica counting, load-queue plumbing, 
inventory tracking, and the historical-side partial-load path) is intentionally 
deferred to follow-up PRs.
   
   changes:
   * add `PartialProjectionLoadSpec`, a `LoadSpec` wrapper for 
partial-projection loads with lazy delegate materialization
   * add `PartialLoadSpecModule` and register it in `CoreInjectorBuilder` so 
historicals always have the wrapper
   * add `supportsPartialLoad` capability flag to `SegmentLoadingCapabilities`; 
historicals advertise true, coordinator defaults to false for unknown servers
   * add optional `fingerprint` and `loadedBytes` wire fields to 
`SegmentChangeRequestLoad` for historical partial-load announcements (NON_NULL 
include)
   * add `PartialLoadProfile` generic data model (wrappedLoadSpec, fingerprint, 
loadedBytes) with `forRequest` / `forLoaded` / `forFullFallback` factories
   * add `SegmentActionHandler.replicateSegmentPartially` default throwing 
`UnsupportedOperationException`
   * wire `PartialLoadRule.run()` to route through `replicateSegmentPartially` 
when the matcher resolves; fall back to `replicateSegment` for 
FULL_LOAD-on-cannot-match


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