Repository: cassandra Updated Branches: refs/heads/cassandra-3.0 55568c17d -> c9ca441bd refs/heads/cassandra-3.X 7886bd38a -> 6130d4b2c refs/heads/trunk 2d559fda5 -> e6e82a79a
Explicitly set locale for string validation Patch by Amit Deshpande; Reviewed by Jeff Jirsa for CASSANDRA-12541,CASSANDRA-12542,CASSANDRA-12543,CASSANDRA-12545 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/9b356409 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/9b356409 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/9b356409 Branch: refs/heads/cassandra-3.X Commit: 9b356409572298373558fe5cc0e249f63c0d3a93 Parents: 55568c1 Author: Amit Deshpande <amit.deshpa...@capitalone.com> Authored: Wed Oct 19 15:16:54 2016 -0500 Committer: Jeff Jirsa <jeff.ji...@crowdstrike.com> Committed: Wed Oct 19 20:41:38 2016 -0700 ---------------------------------------------------------------------- CHANGES.txt | 1 + src/java/org/apache/cassandra/hadoop/cql3/CqlRecordWriter.java | 2 +- src/java/org/apache/cassandra/schema/SpeculativeRetryParam.java | 3 ++- src/java/org/apache/cassandra/thrift/ThriftConversion.java | 2 +- src/java/org/apache/cassandra/utils/CoalescingStrategies.java | 3 ++- 5 files changed, 7 insertions(+), 4 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cassandra/blob/9b356409/CHANGES.txt ---------------------------------------------------------------------- diff --git a/CHANGES.txt b/CHANGES.txt index 31e96b9..933ee61 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -20,6 +20,7 @@ * Backport CASSANDRA-10756 (race condition in NativeTransportService shutdown) (CASSANDRA-12472) * If CF has no clustering columns, any row cache is full partition cache (CASSANDRA-12499) * Correct log message for statistics of offheap memtable flush (CASSANDRA-12776) + * Explicitly set locale for string comparisons (CASSANDRA-12541,CASSANDRA-12542,CASSANDRA-12543) Merged from 2.2: * Clean up permissions when a UDA is dropped (CASSANDRA-12720) * Limit colUpdateTimeDelta histogram updates to reasonable deltas (CASSANDRA-11117) http://git-wip-us.apache.org/repos/asf/cassandra/blob/9b356409/src/java/org/apache/cassandra/hadoop/cql3/CqlRecordWriter.java ---------------------------------------------------------------------- diff --git a/src/java/org/apache/cassandra/hadoop/cql3/CqlRecordWriter.java b/src/java/org/apache/cassandra/hadoop/cql3/CqlRecordWriter.java index cdd93a9..d2a0d86 100644 --- a/src/java/org/apache/cassandra/hadoop/cql3/CqlRecordWriter.java +++ b/src/java/org/apache/cassandra/hadoop/cql3/CqlRecordWriter.java @@ -125,7 +125,7 @@ class CqlRecordWriter extends RecordWriter<Map<String, ByteBuffer>, List<ByteBuf partitionKeyColumns = tableMetadata.getPartitionKey(); String cqlQuery = CqlConfigHelper.getOutputCql(conf).trim(); - if (cqlQuery.toLowerCase().startsWith("insert")) + if (cqlQuery.toLowerCase(Locale.ENGLISH).startsWith("insert")) throw new UnsupportedOperationException("INSERT with CqlRecordWriter is not supported, please use UPDATE/DELETE statement"); cql = appendKeyWhereClauses(cqlQuery); } http://git-wip-us.apache.org/repos/asf/cassandra/blob/9b356409/src/java/org/apache/cassandra/schema/SpeculativeRetryParam.java ---------------------------------------------------------------------- diff --git a/src/java/org/apache/cassandra/schema/SpeculativeRetryParam.java b/src/java/org/apache/cassandra/schema/SpeculativeRetryParam.java index 58c6375..a10a1d3 100644 --- a/src/java/org/apache/cassandra/schema/SpeculativeRetryParam.java +++ b/src/java/org/apache/cassandra/schema/SpeculativeRetryParam.java @@ -19,6 +19,7 @@ package org.apache.cassandra.schema; import java.text.DecimalFormat; import java.util.concurrent.TimeUnit; +import java.util.Locale; import com.google.common.base.Objects; @@ -88,7 +89,7 @@ public final class SpeculativeRetryParam public static SpeculativeRetryParam fromString(String value) { - if (value.toLowerCase().endsWith("ms")) + if (value.toLowerCase(Locale.ENGLISH).endsWith("ms")) { try { http://git-wip-us.apache.org/repos/asf/cassandra/blob/9b356409/src/java/org/apache/cassandra/thrift/ThriftConversion.java ---------------------------------------------------------------------- diff --git a/src/java/org/apache/cassandra/thrift/ThriftConversion.java b/src/java/org/apache/cassandra/thrift/ThriftConversion.java index 3443b6e..8dab090 100644 --- a/src/java/org/apache/cassandra/thrift/ThriftConversion.java +++ b/src/java/org/apache/cassandra/thrift/ThriftConversion.java @@ -194,7 +194,7 @@ public class ThriftConversion private static boolean isSuper(String thriftColumnType) throws org.apache.cassandra.exceptions.InvalidRequestException { - switch (thriftColumnType.toLowerCase()) + switch (thriftColumnType.toLowerCase(Locale.ENGLISH)) { case "standard": return false; case "super": return true; http://git-wip-us.apache.org/repos/asf/cassandra/blob/9b356409/src/java/org/apache/cassandra/utils/CoalescingStrategies.java ---------------------------------------------------------------------- diff --git a/src/java/org/apache/cassandra/utils/CoalescingStrategies.java b/src/java/org/apache/cassandra/utils/CoalescingStrategies.java index 7dba97b..486e3f1 100644 --- a/src/java/org/apache/cassandra/utils/CoalescingStrategies.java +++ b/src/java/org/apache/cassandra/utils/CoalescingStrategies.java @@ -32,6 +32,7 @@ import java.util.List; import java.util.concurrent.BlockingQueue; import java.util.concurrent.TimeUnit; import java.util.concurrent.locks.LockSupport; +import java.util.Locale; import com.google.common.annotations.VisibleForTesting; import com.google.common.base.Preconditions; @@ -499,7 +500,7 @@ public class CoalescingStrategies String displayName) { String classname = null; - String strategyCleaned = strategy.trim().toUpperCase(); + String strategyCleaned = strategy.trim().toUpperCase(Locale.ENGLISH); switch(strategyCleaned) { case "MOVINGAVERAGE":