pass to canAllocate (though nothing is done there now) the actual routing nodes

This commit is contained in:
kimchy 2010-08-21 17:52:02 +03:00
parent 11dbbebb7a
commit 1ddd969fa7
2 changed files with 5 additions and 7 deletions

View File

@ -19,8 +19,6 @@
package org.elasticsearch.cluster.routing;
import org.elasticsearch.cluster.metadata.MetaData;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
@ -119,7 +117,7 @@ public class RoutingNode implements Iterable<MutableShardRouting> {
return count;
}
public boolean canAllocate(MetaData metaData, RoutingTable routingTable) {
public boolean canAllocate(RoutingNodes nodes) {
return true;
}

View File

@ -171,7 +171,7 @@ public class ShardsRoutingStrategy extends AbstractComponent {
continue;
}
if (lowRoutingNode.canAllocate(routingNodes.metaData(), routingNodes.routingTable()) && lowRoutingNode.canAllocate(startedShard)) {
if (lowRoutingNode.canAllocate(routingNodes) && lowRoutingNode.canAllocate(startedShard)) {
changed = true;
lowRoutingNode.add(new MutableShardRouting(startedShard.index(), startedShard.id(),
lowRoutingNode.nodeId(), startedShard.currentNodeId(),
@ -245,7 +245,7 @@ public class ShardsRoutingStrategy extends AbstractComponent {
if (lastNode == nodes.size())
lastNode = 0;
if (node.canAllocate(routingNodes.metaData(), routingNodes.routingTable()) && node.canAllocate(shard)) {
if (node.canAllocate(routingNodes) && node.canAllocate(shard)) {
int numberOfShardsToAllocate = routingNodes.requiredAverageNumberOfShardsPerNode() - node.shards().size();
if (numberOfShardsToAllocate == 0) {
continue;
@ -271,7 +271,7 @@ public class ShardsRoutingStrategy extends AbstractComponent {
}
// go over the nodes and try and allocate the remaining ones
for (RoutingNode routingNode : routingNodes.nodesToShards().values()) {
if (routingNode.canAllocate(routingNodes.metaData(), routingNodes.routingTable()) && routingNode.canAllocate(shard)) {
if (routingNode.canAllocate(routingNodes) && routingNode.canAllocate(shard)) {
changed = true;
routingNode.add(shard);
it.remove();
@ -463,7 +463,7 @@ public class ShardsRoutingStrategy extends AbstractComponent {
List<RoutingNode> sortedNodesLeastToHigh = routingNodes.sortedNodesLeastToHigh();
for (RoutingNode target : sortedNodesLeastToHigh) {
if (target.canAllocate(failedShard) &&
target.canAllocate(routingNodes.metaData(), routingNodes.routingTable()) &&
target.canAllocate(routingNodes) &&
!target.nodeId().equals(failedShard.currentNodeId())) {
target.add(new MutableShardRouting(failedShard.index(), failedShard.id(),