Updated Branches: refs/heads/cassandra-1.0 b318404e5 -> 5c66bd9d3
Return InvalidRequest when using a keyspace that doesn't exist patch by jbellis; reviewed by pcannon for CASSANDRA-3764 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/5c66bd9d Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/5c66bd9d Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/5c66bd9d Branch: refs/heads/cassandra-1.0 Commit: 5c66bd9d388f59243b852be0fa4da58b60c1af30 Parents: b318404 Author: Jonathan Ellis <[email protected]> Authored: Tue Jan 24 18:52:14 2012 -0600 Committer: Jonathan Ellis <[email protected]> Committed: Tue Jan 24 18:52:14 2012 -0600 ---------------------------------------------------------------------- CHANGES.txt | 2 ++ .../org/apache/cassandra/service/ClientState.java | 5 ++++- 2 files changed, 6 insertions(+), 1 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cassandra/blob/5c66bd9d/CHANGES.txt ---------------------------------------------------------------------- diff --git a/CHANGES.txt b/CHANGES.txt index a105558..cbe8498 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,6 @@ 1.0.8 + * Return InvalidRequest when using a keyspace that doesn't exist + (CASSANDRA-3764) * disallow user modification of System keyspace (CASSANDRA-3738) * allow using sstable2json on secondary index data (CASSANDRA-3738) * (cqlsh) add DESCRIBE COLUMNFAMILIES (CASSANDRA-3586) http://git-wip-us.apache.org/repos/asf/cassandra/blob/5c66bd9d/src/java/org/apache/cassandra/service/ClientState.java ---------------------------------------------------------------------- diff --git a/src/java/org/apache/cassandra/service/ClientState.java b/src/java/org/apache/cassandra/service/ClientState.java index bc8e16f..0cac528 100644 --- a/src/java/org/apache/cassandra/service/ClientState.java +++ b/src/java/org/apache/cassandra/service/ClientState.java @@ -30,6 +30,7 @@ import org.apache.cassandra.auth.AuthenticatedUser; import org.apache.cassandra.auth.Permission; import org.apache.cassandra.auth.Resources; import org.apache.cassandra.config.DatabaseDescriptor; +import org.apache.cassandra.config.Schema; import org.apache.cassandra.db.Table; import org.apache.cassandra.thrift.AuthenticationException; import org.apache.cassandra.thrift.InvalidRequestException; @@ -70,8 +71,10 @@ public class ClientState return keyspace; } - public void setKeyspace(String ks) + public void setKeyspace(String ks) throws InvalidRequestException { + if (Schema.instance.getKSMetaData(ks) == null) + throw new InvalidRequestException("Keyspace '" + ks + "' does not exist"); keyspace = ks; }
