-
Notifications
You must be signed in to change notification settings - Fork 2.5k
Description
Is your feature request related to a problem? Please describe
Wires IngestService from Node to IngestionEngine to enable ingest pipeline support in pull-based ingestion. This will be wiring-only change with no behavioral impact β IngestService is stored but not used yet.
IngestService is constructed after IndicesService in Node.java, and IngestService takes IndicesService as a constructor arg. This creates a dependency that prevents passing IngestService directly to IndicesService.
Describe the solution you'd like
We can use SetOnce + Supplier late-binding pattern to break the dependency:
Node (SetOnce)
β IndicesService (Supplier)
β IngestionEngineFactory (Supplier)
β IngestionEngine (@nullable IngestService)
The supplier can only be resolved when the first ingestion engine starts, by which time IngestService is fully constructed.
Related component
No response
Describe alternatives you've considered
No response
Additional context
No response
Metadata
Metadata
Assignees
Labels
Type
Projects
Status