!clu #15042 useRole restriction on local node is now respected

This is an API breaking change if someone implemented their own Routers.
The change is required because the router must know if the local routees
should be started or not so it has to check the roles of the cluster
member (the local one). We could delay this decision of starting local
routees, but that would allow messages to be dead-letter-ed (bad).
This commit is contained in:
Konrad 'ktoso' Malawski 2014-09-05 14:15:46 +02:00
parent f2f88d9dd7
commit 3f12ef262f
16 changed files with 319 additions and 114 deletions

View file

@ -59,7 +59,7 @@ final class RandomRoutingLogic extends RoutingLogic {
*/
@SerialVersionUID(1L)
final case class RandomPool(
override val nrOfInstances: Int, override val resizer: Option[Resizer] = None,
val nrOfInstances: Int, override val resizer: Option[Resizer] = None,
override val supervisorStrategy: SupervisorStrategy = Pool.defaultSupervisorStrategy,
override val routerDispatcher: String = Dispatchers.DefaultDispatcherId,
override val usePoolDispatcher: Boolean = false)
@ -79,6 +79,8 @@ final case class RandomPool(
override def createRouter(system: ActorSystem): Router = new Router(RandomRoutingLogic())
override def nrOfInstances(sys: ActorSystem) = this.nrOfInstances
/**
* Setting the supervisor strategy to be used for the head Router actor.
*/