diff --git a/CHANGES.txt b/CHANGES.txt index 82862d0d15..f7a109fa03 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -50,7 +50,7 @@ Merged from 1.0: erroring out (CASSANDRA-3975) * add CompositeType ref to the CLI doc for create/update column family (CASSANDRA-3980) * Pig: support Counter ColumnFamilies (CASSANDRA-3973) - * Pig: Composite column support (CASSANDRA-384) + * Pig: Composite column support (CASSANDRA-3684) * Avoid NPE during repair when a keyspace has no CFs (CASSANDRA-3988) * Fix division-by-zero error on get_slice (CASSANDRA-4000) * don't change manifest level for cleanup, scrub, and upgradesstables @@ -63,6 +63,14 @@ Merged from 1.0: * fix totalBytes count for parallel compactions (CASSANDRA-3758) * fix intermittent NPE in get_slice (CASSANDRA-4095) * remove unnecessary asserts in native code interfaces (CASSANDRA-4096) + * Validate blank keys in CQL to avoid assertion errors (CASSANDRA-3612) + * cqlsh: fix bad decoding of some column names (CASSANDRA-4003) + * cqlsh: fix incorrect padding with unicode chars (CASSANDRA-4033) + * Fix EC2 snitch incorrectly reporting region (CASSANDRA-4026) + * Shut down thrift during decommission (CASSANDRA-4086) + * Expose nodetool cfhistograms for 2ndary indexes (CASSANDRA-4063) +Merged from 0.8: + * Fix ConcurrentModificationException in gossiper (CASSANDRA-4019) 1.1-beta1 diff --git a/conf/cassandra-env.sh b/conf/cassandra-env.sh index f6416cf73d..6d4d0da12d 100644 --- a/conf/cassandra-env.sh +++ b/conf/cassandra-env.sh @@ -186,7 +186,7 @@ JVM_OPTS="$JVM_OPTS -Djava.net.preferIPv4Stack=true" # JVM_OPTS="$JVM_OPTS -Djava.rmi.server.hostname=" # # see -# http://blogs.sun.com/jmxetc/entry/troubleshooting_connection_problems_in_jconsole +# https://blogs.oracle.com/jmxetc/entry/troubleshooting_connection_problems_in_jconsole # for more on configuring JMX through firewalls, etc. (Short version: # get it working with no firewall first.) JVM_OPTS="$JVM_OPTS -Dcom.sun.management.jmxremote.port=$JMX_PORT" diff --git a/src/java/org/apache/cassandra/net/IncomingTcpConnection.java b/src/java/org/apache/cassandra/net/IncomingTcpConnection.java index f329636db6..a1140c2946 100644 --- a/src/java/org/apache/cassandra/net/IncomingTcpConnection.java +++ b/src/java/org/apache/cassandra/net/IncomingTcpConnection.java @@ -90,19 +90,16 @@ public class IncomingTcpConnection extends Thread // we should buffer input = new DataInputStream(new BufferedInputStream(socket.getInputStream(), 4096)); // Receive the first message to set the version. - Message msg = receiveMessage(input, version); - from = msg.getFrom(); // why? see => CASSANDRA-4099 + from = receiveMessage(input, version); // why? see => CASSANDRA-4099 if (version > MessagingService.version_) { // save the endpoint so gossip will reconnect to it Gossiper.instance.addSavedEndpoint(from); logger.info("Received " + (isStream ? "streaming " : "") + "connection from newer protocol version. Ignoring"); + return; } - else if (msg != null) - { - Gossiper.instance.setVersion(from, version); - logger.debug("set version for {} to {}", from, version); - } + Gossiper.instance.setVersion(from, version); + logger.debug("set version for {} to {}", from, version); // loop to get the next message. while (true) @@ -131,7 +128,7 @@ public class IncomingTcpConnection extends Thread } } - private Message receiveMessage(DataInputStream input, int version) throws IOException + private InetAddress receiveMessage(DataInputStream input, int version) throws IOException { int totalSize = input.readInt(); String id = input.readUTF(); @@ -156,10 +153,12 @@ public class IncomingTcpConnection extends Thread { Message message = new Message(header, body, version); MessagingService.instance().receive(message, id); - return message; } - logger.debug("Received connection from newer protocol version {}. Ignoring message", version); - return null; + else + { + logger.debug("Received connection from newer protocol version {}. Ignoring message", version); + } + return header.getFrom(); } private void close() diff --git a/src/resources/org/apache/cassandra/cli/CliHelp.yaml b/src/resources/org/apache/cassandra/cli/CliHelp.yaml index 9e417dc262..017b54edd6 100644 --- a/src/resources/org/apache/cassandra/cli/CliHelp.yaml +++ b/src/resources/org/apache/cassandra/cli/CliHelp.yaml @@ -692,7 +692,7 @@ commands: It is also valid to specify the fully-qualified class name to a class that extends org.apache.cassandra.db.marshal.AbstractType. - - key_valiation_class: Validator to use for keys. + - key_validation_class: Validator to use for keys. Default is BytesType which applies no validation. Supported values are: