From f8fa6d243111c41fe5c32afa49973892e4b136fc Mon Sep 17 00:00:00 2001 From: Jonathan Ellis Date: Wed, 26 Aug 2009 22:20:13 +0000 Subject: [PATCH] refactors COPP to use BytesToken. patch by Stu Hood; reviewed by jbellis for CASSANDRA-242 git-svn-id: https://svn.apache.org/repos/asf/incubator/cassandra/trunk@808205 13f79535-47bb-0310-9956-ffa450edef68 --- conf/storage-conf.xml | 6 +- .../cassandra/db/marshal/BytesType.java | 23 +----- .../apache/cassandra/dht/BigIntegerToken.java | 6 ++ .../org/apache/cassandra/dht/BytesToken.java | 43 +++++++++++ .../CollatingOrderPreservingPartitioner.java | 76 ++++++++++++++++++- .../apache/cassandra/dht/IPartitioner.java | 21 +++-- .../dht/OrderPreservingPartitioner.java | 22 +++++- .../cassandra/dht/RandomPartitioner.java | 16 +++- .../org/apache/cassandra/dht/StringToken.java | 4 +- src/java/org/apache/cassandra/dht/Token.java | 9 +-- .../cassandra/service/CassandraServer.java | 4 +- .../apache/cassandra/utils/FBUtilities.java | 25 ++++++ test/conf/storage-conf.xml | 2 +- .../apache/cassandra/db/BootstrapTest.java | 1 - .../cassandra/db/marshal/BytesTypeTest.java | 21 +++++ ...llatingOrderPreservingPartitionerTest.java | 65 ++++++++++++++++ .../dht/OrderPreservingPartitionerTest.java | 46 +++++++++++ .../cassandra/dht/PartitionerTestCase.java | 66 ++++++++++++++++ 18 files changed, 410 insertions(+), 46 deletions(-) create mode 100644 src/java/org/apache/cassandra/dht/BytesToken.java create mode 100644 test/unit/org/apache/cassandra/db/marshal/BytesTypeTest.java create mode 100644 test/unit/org/apache/cassandra/dht/CollatingOrderPreservingPartitionerTest.java create mode 100644 test/unit/org/apache/cassandra/dht/OrderPreservingPartitionerTest.java create mode 100644 test/unit/org/apache/cassandra/dht/PartitionerTestCase.java diff --git a/conf/storage-conf.xml b/conf/storage-conf.xml index ef5e2295b7..63f978f10a 100644 --- a/conf/storage-conf.xml +++ b/conf/storage-conf.xml @@ -100,8 +100,8 @@ ~ org.apache.cassandra.dht.CollatingOrderPreservingPartitioner. ~ (CollatingOPP colates according to EN,US rules, not naive byte ~ ordering. Use this as an example if you need locale-aware collation.) - ~ Range queries require using OrderPreservingPartitioner or a subclass. - + ~ Range queries require using an order-preserving partitioner. + ~ ~ Achtung! Changing this parameter requires wiping your data ~ directories, since the partitioner can modify the sstable on-disk ~ format. @@ -109,7 +109,7 @@ org.apache.cassandra.dht.RandomPartitioner