From b5b9f7106d66eda6e41cea292bc569886b701448 Mon Sep 17 00:00:00 2001 From: Stefan Podkowinski Date: Mon, 23 Nov 2015 17:12:35 +0100 Subject: [PATCH] Force encoding charset when computed prepared statement IDs patch by Stefan Podkowinski; reviewed by slebresne for CASSANDRA-10755 --- CHANGES.txt | 1 + src/java/org/apache/cassandra/utils/MD5Digest.java | 10 +++++++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/CHANGES.txt b/CHANGES.txt index 7978a56dd0..ee0bc6120a 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.1.12 + * Force encoding when computing statement ids (CASSANDRA-10755) * Properly reject counters as map keys (CASSANDRA-10760) * Fix the sstable-needs-cleanup check (CASSANDRA-10740) * (cqlsh) Print column names before COPY operation (CASSANDRA-8935) diff --git a/src/java/org/apache/cassandra/utils/MD5Digest.java b/src/java/org/apache/cassandra/utils/MD5Digest.java index 3f4645803a..2dc57de82e 100644 --- a/src/java/org/apache/cassandra/utils/MD5Digest.java +++ b/src/java/org/apache/cassandra/utils/MD5Digest.java @@ -17,6 +17,7 @@ */ package org.apache.cassandra.utils; +import java.io.UnsupportedEncodingException; import java.util.Arrays; /** @@ -50,7 +51,14 @@ public class MD5Digest public static MD5Digest compute(String toHash) { - return compute(toHash.getBytes()); + try + { + return compute(toHash.getBytes("UTF-8")); + } + catch (UnsupportedEncodingException e) + { + throw new RuntimeException(e.getMessage()); + } } @Override