diff --git a/CHANGES.txt b/CHANGES.txt index 18c0a9645d..d7a45363e8 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -8,6 +8,7 @@ values (CASSANDRA-7792) * Fix ordering of static cells (CASSANDRA-7763) Merged from 2.0: + * Forbid re-adding dropped counter columns (CASSANDRA-7831) * Fix CFMetaData#isThriftCompatible() for PK-only tables (CASSANDRA-7832) * Always reject inequality on the partition key without token() (CASSANDRA-7722) diff --git a/conf/cassandra-env.sh b/conf/cassandra-env.sh index 43a121cfb2..4e8a2c6d4c 100644 --- a/conf/cassandra-env.sh +++ b/conf/cassandra-env.sh @@ -90,7 +90,7 @@ calculate_heap_sizes() java_ver_output=`"${JAVA:-java}" -version 2>&1` -jvmver=`echo "$java_ver_output" | grep 'java version' | awk -F'"' 'NR==1 {print $2}'` +jvmver=`echo "$java_ver_output" | grep '[openjdk|java] version' | awk -F'"' 'NR==1 {print $2}'` JVM_VERSION=${jvmver%_*} JVM_PATCH_VERSION=${jvmver#*_} diff --git a/src/java/org/apache/cassandra/cql3/statements/AlterTableStatement.java b/src/java/org/apache/cassandra/cql3/statements/AlterTableStatement.java index be28943408..f286f31fe6 100644 --- a/src/java/org/apache/cassandra/cql3/statements/AlterTableStatement.java +++ b/src/java/org/apache/cassandra/cql3/statements/AlterTableStatement.java @@ -108,6 +108,10 @@ public class AlterTableStatement extends SchemaAlteringStatement } } + // Cannot re-add a dropped counter column. See #7831. + if (meta.isCounter() && meta.getDroppedColumns().containsKey(columnName)) + throw new InvalidRequestException(String.format("Cannot re-add previously dropped counter column %s", columnName)); + AbstractType type = validator.getType(); if (type instanceof CollectionType) {