@Override public List<Host> get() { Map<BigInteger, List<Host>> tokenHostMap = source.get(); Set<Host> hosts = Sets.newHashSet(); for (Entry<BigInteger, List<Host>> entry : tokenHostMap.entrySet()) { for (Host host : entry.getValue()) { if (!hosts.contains(host)) { hosts.add(host); } String token = entry.getKey().toString(); host.getTokenRanges().add(new TokenRangeImpl(token, token, null)); } } return Lists.newArrayList(hosts); }
@Override public List<Host> get() { Map<BigInteger, List<Host>> tokenHostMap = source.get(); Set<Host> hosts = Sets.newHashSet(); for (Entry<BigInteger, List<Host>> entry : tokenHostMap.entrySet()) { for (Host host : entry.getValue()) { if (!hosts.contains(host)) { hosts.add(host); } String token = entry.getKey().toString(); host.getTokenRanges().add(new TokenRangeImpl(token, token, null)); } } return Lists.newArrayList(hosts); }
@Override public List<TokenRange> splitTokenRange(String first, String last, int count) { if (first.equals(last)) { last = getTokenMinusOne(last); } List<TokenRange> tokens = Lists.newArrayList(); List<String> splits = splitRange(new BigInteger(first), new BigInteger(last), count); Iterator<String> iter = splits.iterator(); String current = iter.next(); while (iter.hasNext()) { String next = iter.next(); tokens.add(new TokenRangeImpl(current, next, new ArrayList<String>())); current = next; } return tokens; }
@Override public List<TokenRange> splitTokenRange(String first, String last, int count) { if (first.equals(last)) { first = getMinToken(); last = getMaxToken(); } List<TokenRange> tokens = Lists.newArrayList(); List<String> splits = splitRange(new BigInteger(first), new BigInteger(last), count); Iterator<String> iter = splits.iterator(); String current = iter.next(); while (iter.hasNext()) { String next = iter.next(); tokens.add(new TokenRangeImpl(current, next, new ArrayList<String>())); current = next; } return tokens; }
@Override public List<TokenRange> splitTokenRange(String first, String last, int count) { List<TokenRange> tokens = Lists.newArrayList(); for (int i = 0; i < count; i++) { String startToken = getTokenMinusOne(getSegmentToken(count, i, new BigInteger(first, 16), new BigInteger(last, 16))); String endToken; if (i == count-1 && last.equals(getMaxToken())) endToken = getMinToken(); else endToken = getSegmentToken(count, i+1, new BigInteger(first, 16), new BigInteger(last, 16)); tokens.add(new TokenRangeImpl(startToken, endToken, new ArrayList<String>())); } return tokens; }
public static List<Host> makeRing( int nHosts, int replication_factor, int id, BigInteger minInitialToken, BigInteger maxInitialToken) { List<Host> hosts = Lists.newArrayList(); for (int i = 0; i < nHosts; i++) { hosts.add(new Host("127.0." + id + "." + i + ":" + TestHostType.GOOD_FAST.ordinal(), 9160)); } for (int i = 0; i < nHosts; i++) { String startToken = TokenGenerator.initialToken(nHosts, i, minInitialToken, maxInitialToken); String endToken = TokenGenerator.initialToken(nHosts, i+1, minInitialToken, maxInitialToken); if (endToken.equals(maxInitialToken.toString())) endToken = minInitialToken.toString(); TokenRange range = new TokenRangeImpl(startToken, endToken, null); for (int j = 0; j < replication_factor; j++) { hosts.get((i+j)%nHosts).getTokenRanges().add(range); } } return hosts; }
public static List<Host> makeRing( int nHosts, int replication_factor, int id, BigInteger minInitialToken, BigInteger maxInitialToken) { List<Host> hosts = Lists.newArrayList(); for (int i = 0; i < nHosts; i++) { hosts.add(new Host("127.0." + id + "." + i + ":" + TestHostType.GOOD_FAST.ordinal(), 9160)); } for (int i = 0; i < nHosts; i++) { String startToken = TokenGenerator.initialToken(nHosts, i, minInitialToken, maxInitialToken); String endToken = TokenGenerator.initialToken(nHosts, i+1, minInitialToken, maxInitialToken); if (endToken.equals(maxInitialToken.toString())) endToken = minInitialToken.toString(); TokenRange range = new TokenRangeImpl(startToken, endToken, null); for (int j = 0; j < replication_factor; j++) { hosts.get((i+j)%nHosts).getTokenRanges().add(range); } } return hosts; }
@Override public List<TokenRange> internalExecute(Cassandra.Client client, ConnectionContext context) throws Exception { List<org.apache.cassandra.thrift.TokenRange> trs = client.describe_ring(getKeyspaceName()); List<TokenRange> range = Lists.newArrayList(); for (org.apache.cassandra.thrift.TokenRange tr : trs) { List<String> endpoints = Lists.newArrayList(); for (org.apache.cassandra.thrift.EndpointDetails ed : tr.getEndpoint_details()) { if (dc != null && !ed.getDatacenter().equals(dc)) { continue; } else if (rack != null && !ed.getRack().equals(rack)) { continue; } else { endpoints.add(ed.getHost()); } } if (!endpoints.isEmpty()) { range.add(new TokenRangeImpl(tr.getStart_token(), tr.getEnd_token(), endpoints)); } } return range; } }, getConfig().getRetryPolicy().duplicate()).getResult();
@Override public List<TokenRange> internalExecute(Cassandra.Client client, ConnectionContext context) throws Exception { List<org.apache.cassandra.thrift.TokenRange> trs = client.describe_ring(getKeyspaceName()); List<TokenRange> range = Lists.newArrayList(); for (org.apache.cassandra.thrift.TokenRange tr : trs) { List<String> endpoints = Lists.newArrayList(); for (org.apache.cassandra.thrift.EndpointDetails ed : tr.getEndpoint_details()) { if (dc != null && !ed.getDatacenter().equals(dc)) { continue; } else if (rack != null && !ed.getRack().equals(rack)) { continue; } else { endpoints.add(ed.getHost()); } } if (!endpoints.isEmpty()) { range.add(new TokenRangeImpl(tr.getStart_token(), tr.getEnd_token(), endpoints)); } } return range; } }, getConfig().getRetryPolicy().duplicate()).getResult();
ranges.add(new TokenRangeImpl(startToken, endToken, endpoints));
TokenRange intersectingTokenRange = new TokenRangeImpl( toTokenString(scanRange.getFrom()), toTokenString(scanRange.getTo()), tokenRange.getEndpoints());
TokenRange intersectingTokenRange = new TokenRangeImpl( toTokenString(scanRange.getFrom()), toTokenString(scanRange.getTo()), tokenRange.getEndpoints());
TokenRange intersectingTokenRange = new TokenRangeImpl( toTokenString(scanRange.getFrom()), toTokenString(scanRange.getTo()), tokenRange.getEndpoints());
TokenRange intersectingTokenRange = new TokenRangeImpl( toTokenString(scanRange.getFrom()), toTokenString(scanRange.getTo()), tokenRange.getEndpoints());
TokenRange newWorkTokenRange = new TokenRangeImpl(split.getStartToken(), split.getEndToken(), splitWork.range.getEndpoints()); int newWorkDesiredSize = splitWork.desiredRecordsPerSplit / 10; splitWorkQueue.push(
TokenRange newWorkTokenRange = new TokenRangeImpl(split.getStartToken(), split.getEndToken(), splitWork.range.getEndpoints()); int newWorkDesiredSize = splitWork.desiredRecordsPerSplit / 10; splitWorkQueue.push(
TokenRange newWorkTokenRange = new TokenRangeImpl(split.getStartToken(), split.getEndToken(), splitWork.range.getEndpoints()); int newWorkDesiredSize = splitWork.desiredRecordsPerSplit / 10; splitWorkQueue.push(
TokenRange newWorkTokenRange = new TokenRangeImpl(split.getStartToken(), split.getEndToken(), splitWork.range.getEndpoints()); int newWorkDesiredSize = splitWork.desiredRecordsPerSplit / 10; splitWorkQueue.push(