From 1c073e70edda23c97267228f00dc611d0fe61332 Mon Sep 17 00:00:00 2001 From: Chris Lockfort Date: Fri, 25 Sep 2015 14:03:39 -0700 Subject: [PATCH] Make Hadoop CF splits more polite to custom orderered partitioners patch by Chris Lockfort; reviewed by Philip Thompson for CASSANDRA-10400 --- CHANGES.txt | 4 ++++ .../cassandra/hadoop/AbstractColumnFamilyInputFormat.java | 6 ++---- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/CHANGES.txt b/CHANGES.txt index 9c70c740c8..47fa4c2d72 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,3 +1,7 @@ +2.2.3 + * Make Hadoop CF splits more polite to custom orderered partitioners (CASSANDRA-10400) + + 2.2.2 * cqlsh prompt includes name of keyspace after failed `use` statement (CASSANDRA-10369) * Configurable page size in cqlsh (CASSANDRA-9855) diff --git a/src/java/org/apache/cassandra/hadoop/AbstractColumnFamilyInputFormat.java b/src/java/org/apache/cassandra/hadoop/AbstractColumnFamilyInputFormat.java index 103d4788b5..e531ad1693 100644 --- a/src/java/org/apache/cassandra/hadoop/AbstractColumnFamilyInputFormat.java +++ b/src/java/org/apache/cassandra/hadoop/AbstractColumnFamilyInputFormat.java @@ -203,8 +203,6 @@ public abstract class AbstractColumnFamilyInputFormat extends InputFormat< for (Host endpoint : hosts) endpoints[endpointIndex++] = endpoint.getAddress().getHostName(); - boolean partitionerIsOpp = partitioner instanceof OrderPreservingPartitioner || partitioner instanceof ByteOrderedPartitioner; - for (TokenRange subSplit : subSplits.keySet()) { List ranges = subSplit.unwrap(); @@ -212,9 +210,9 @@ public abstract class AbstractColumnFamilyInputFormat extends InputFormat< { ColumnFamilySplit split = new ColumnFamilySplit( - partitionerIsOpp ? + partitioner.preservesOrder() ? subrange.getStart().toString().substring(2) : subrange.getStart().toString(), - partitionerIsOpp ? + partitioner.preservesOrder() ? subrange.getEnd().toString().substring(2) : subrange.getStart().toString(), subSplits.get(subSplit), endpoints);