Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Make the ShardPositions model into a ShardPositionsService actor (#4156)
Its purpose is to encapsulate all of the logic used to maintained a distributed eventually consistent view of the published shard positions over the cluster. From the user point of view, after instantiation - indexing pipelines need to feed it with updates. (this happens on suggest_truncate). This is done by publishing `LocalShardPositionsUpdates` to the event broker. - clients interested in updates can just subscript the `ShardPositionsUpdate` object in the event broker. The event received can come from a local indexing pipeline or anywhere in the cluster. The service takes care of deduping/ignoring updates when necessary. The two object (Local and not) are very similar, but different in semantics. Related to #4056
- Loading branch information