Search in sources :

Example 21 with Node

use of com.ms.silverking.cloud.topology.Node in project SilverKing by Morgan-Stanley.

the class PrimarySecondaryListPair method getLastAddedOwnerNotIn.

public Node getLastAddedOwnerNotIn(Set<Node> excluding) {
    int secondaryIndex;
    int primaryIndex;
    Node node;
    secondaryIndex = secondaryOwners.size() - 1;
    primaryIndex = primaryOwners.size() - 1;
    do {
        if (secondaryIndex > 0) {
            node = secondaryOwners.get(secondaryIndex);
            secondaryIndex--;
        } else {
            if (primaryOwners.size() == 0) {
                Log.warning(this);
                Log.warning(CollectionUtil.toString(excluding));
                throw new RuntimeException("getLastAddedOwnerNotIn() failed");
            }
            node = primaryOwners.get(primaryIndex);
            primaryIndex--;
        }
        if (excluding.contains(node)) {
            node = null;
        }
    } while (node == null);
    return node;
/*
        if (secondaryOwners.size() > 0) {
            return secondaryOwners.get(secondaryOwners.size() - 1);
        } else {
            assert primaryOwners.size() > 0;
            return primaryOwners.get(primaryOwners.size() - 1);
        }
        */
}
Also used : Node(com.ms.silverking.cloud.topology.Node)

Example 22 with Node

use of com.ms.silverking.cloud.topology.Node in project SilverKing by Morgan-Stanley.

the class ProtoRegionList method toString.

@Override
public String toString() {
    StringBuilder sb;
    sb = new StringBuilder();
    for (ProtoRegion pr : protoRegions) {
        sb.append(pr);
        sb.append("\n");
    }
    sb.append("\n");
    for (Node owner : getOwners()) {
        sb.append(owner + ":\t" + getOwnedFraction(owner));
        sb.append("\n");
    }
    sb.append("\n");
    return sb.toString();
}
Also used : Node(com.ms.silverking.cloud.topology.Node)

Example 23 with Node

use of com.ms.silverking.cloud.topology.Node in project SilverKing by Morgan-Stanley.

the class ProtoRegionList method getAllocations.

public Map<String, Long> getAllocations() {
    Map<String, Long> allocations;
    allocations = new HashMap<>();
    for (ProtoRegion pr : protoRegions) {
        for (Node node : pr.getPrimaryOwners()) {
            Long allocation;
            allocation = allocations.get(node.getIDString());
            if (allocation == null) {
                allocation = new Long(0);
            }
            allocation += pr.getRegionSize();
            allocations.put(node.getIDString(), allocation);
        }
    }
    return allocations;
}
Also used : Node(com.ms.silverking.cloud.topology.Node)

Example 24 with Node

use of com.ms.silverking.cloud.topology.Node in project SilverKing by Morgan-Stanley.

the class ConvergenceController2 method getAllNonLocalPrimary.

private Set<IPAndPort> getAllNonLocalPrimary(RingEntry entry) {
    ImmutableSet.Builder<IPAndPort> pSetBuilder;
    pSetBuilder = ImmutableSet.builder();
    for (Node node : entry.getPrimaryOwnersList()) {
        IPAndPort primary;
        primary = new IPAndPort(node.getIDString(), DHTNode.getServerPort());
        if (!primary.equals(mgBase._getIPAndPort())) {
            pSetBuilder.add(primary);
        }
    }
    return pSetBuilder.build();
}
Also used : IPAndPort(com.ms.silverking.net.IPAndPort) ImmutableSet(com.google.common.collect.ImmutableSet) DHTNode(com.ms.silverking.cloud.dht.daemon.DHTNode) Node(com.ms.silverking.cloud.topology.Node)

Example 25 with Node

use of com.ms.silverking.cloud.topology.Node in project SilverKing by Morgan-Stanley.

the class SKAdmin method getAllServersInTree.

public Set<String> getAllServersInTree(InstantiatedRingTree ringTree) {
    Set<Node> nodes;
    ImmutableSet.Builder<String> servers;
    nodes = ringTree.getMemberNodes(OwnerQueryMode.All, NodeClass.server);
    servers = ImmutableSet.builder();
    for (Node node : nodes) {
        servers.add(node.getIDString());
    }
    return servers.build();
}
Also used : ImmutableSet(com.google.common.collect.ImmutableSet) DHTNode(com.ms.silverking.cloud.dht.daemon.DHTNode) Node(com.ms.silverking.cloud.topology.Node)

Aggregations

Node (com.ms.silverking.cloud.topology.Node)50 GenericNode (com.ms.silverking.cloud.topology.GenericNode)17 DHTNode (com.ms.silverking.cloud.dht.daemon.DHTNode)10 ImmutableSet (com.google.common.collect.ImmutableSet)6 IPAndPort (com.ms.silverking.net.IPAndPort)5 NodeClass (com.ms.silverking.cloud.topology.NodeClass)4 SubPolicy (com.ms.silverking.cloud.storagepolicy.SubPolicy)2 SubPolicyMember (com.ms.silverking.cloud.storagepolicy.SubPolicyMember)2 RingInteger (com.ms.silverking.numeric.RingInteger)2 ImmutableList (com.google.common.collect.ImmutableList)1 HostGroupTable (com.ms.silverking.cloud.config.HostGroupTable)1 PolicyParser (com.ms.silverking.cloud.storagepolicy.PolicyParser)1 StoragePolicy (com.ms.silverking.cloud.storagepolicy.StoragePolicy)1 StoragePolicyGroup (com.ms.silverking.cloud.storagepolicy.StoragePolicyGroup)1 Topology (com.ms.silverking.cloud.topology.Topology)1 WeightSpecifications (com.ms.silverking.cloud.toporing.meta.WeightSpecifications)1 SimpleStopwatch (com.ms.silverking.time.SimpleStopwatch)1 Stopwatch (com.ms.silverking.time.Stopwatch)1 File (java.io.File)1 BigDecimal (java.math.BigDecimal)1