From 6dbe1c00c49800455edee4fb6aa091b1a75531de Mon Sep 17 00:00:00 2001 From: Patrik Nordwall Date: Thu, 20 Sep 2012 09:24:06 +0200 Subject: [PATCH] Further improvement of selectDeploymentTarget based on feedback --- .../scala/akka/cluster/routing/ClusterRouterConfig.scala | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/akka-cluster/src/main/scala/akka/cluster/routing/ClusterRouterConfig.scala b/akka-cluster/src/main/scala/akka/cluster/routing/ClusterRouterConfig.scala index 99415e9838..d3a0b9cb88 100644 --- a/akka-cluster/src/main/scala/akka/cluster/routing/ClusterRouterConfig.scala +++ b/akka-cluster/src/main/scala/akka/cluster/routing/ClusterRouterConfig.scala @@ -202,12 +202,9 @@ private[akka] class ClusterRouteeProvider( } else { // find the node with least routees val numberOfRouteesPerNode: Map[Address, Int] = - currentRoutees.foldLeft(currentNodes.map(_ -> 0).toMap) { (acc, x) ⇒ + currentRoutees.foldLeft(currentNodes.map(_ -> 0).toMap.withDefault(_ ⇒ 0)) { (acc, x) ⇒ val address = fullAddress(x) - acc.get(address) match { - case Some(count) ⇒ acc + (address -> (count + 1)) - case None ⇒ acc + (address -> 1) - } + acc + (address -> (acc(address) + 1)) } val (address, count) = numberOfRouteesPerNode.minBy(_._2)