Skip to content

Implement a router on the per repository elector stack

Sami Hiltunen requested to merge smh-per-repository-router-impl into master

This commit adds a router implementation based on the per repository elector stack. The behavior deviates in few ways from the current nodeManager router:

  1. RouteStorageMutator is unimplemented as it doesn't appear we should receive such requests any more with hashed storage. All mutators should be repository scoped given repository scoped primaries.
  2. RouteStorageAccessor routes the requests to any healthy node. We can't match the behavior of nodeManagerRouter as we don't have a primary for a virtual storage. This should be fine though, as the only RPC that is scoped like this only makes a remote call and doesn't depend on any state on the server.
  3. Repository scoped messages respect repository specific primaries as opposed to virtual storage scoped primaries in the nodeManagerRouter.

This commit does not yet hook up the router to the rest of the code.

Related to #3133 (closed)

Merge request reports