You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by db...@apache.org on 2012/10/17 06:00:45 UTC
git commit: fix get_range_slices with startkey and endtoken specified
patch by Nikolay (nmmm) reviewed by dbrosius for CASSANDRA-4804
Updated Branches:
refs/heads/cassandra-1.1 b8874ad1a -> 4d637f1f1
fix get_range_slices with startkey and endtoken specified
patch by Nikolay (nmmm) reviewed by dbrosius for CASSANDRA-4804
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/4d637f1f
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/4d637f1f
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/4d637f1f
Branch: refs/heads/cassandra-1.1
Commit: 4d637f1f1b62593e0c52e49966e3f286bf65c3e9
Parents: b8874ad
Author: Dave Brosius <db...@apache.org>
Authored: Tue Oct 16 23:56:26 2012 -0400
Committer: Dave Brosius <db...@apache.org>
Committed: Tue Oct 16 23:56:26 2012 -0400
----------------------------------------------------------------------
.../apache/cassandra/thrift/CassandraServer.java | 10 ++++++----
1 files changed, 6 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/4d637f1f/src/java/org/apache/cassandra/thrift/CassandraServer.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/thrift/CassandraServer.java b/src/java/org/apache/cassandra/thrift/CassandraServer.java
index a11472c..ad416f3 100644
--- a/src/java/org/apache/cassandra/thrift/CassandraServer.java
+++ b/src/java/org/apache/cassandra/thrift/CassandraServer.java
@@ -673,18 +673,20 @@ public class CassandraServer implements Cassandra.Iface
List<Row> rows;
try
{
- IPartitioner p = StorageService.getPartitioner();
+ IPartitioner<?> p = StorageService.getPartitioner();
AbstractBounds<RowPosition> bounds;
if (range.start_key == null)
{
- Token.TokenFactory tokenFactory = p.getTokenFactory();
+ Token.TokenFactory<?> tokenFactory = p.getTokenFactory();
Token left = tokenFactory.fromString(range.start_token);
Token right = tokenFactory.fromString(range.end_token);
bounds = Range.makeRowRange(left, right, p);
}
else
{
- bounds = new Bounds<RowPosition>(RowPosition.forKey(range.start_key, p), RowPosition.forKey(range.end_key, p));
+ RowPosition end = range.end_key == null ? p.getTokenFactory().fromString(range.end_token).maxKeyBound(p)
+ : RowPosition.forKey(range.end_key, p);
+ bounds = new Bounds<RowPosition>(RowPosition.forKey(range.start_key, p), end);
}
schedule(DatabaseDescriptor.getRpcTimeout());
try
@@ -862,7 +864,7 @@ public class CassandraServer implements Cassandra.Iface
{
return StorageService.instance.describeRing(keyspace);
}
-
+
public Map<String, String> describe_token_map() throws InvalidRequestException
{
return StorageService.instance.getTokenToEndpointMap();