You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by gd...@apache.org on 2010/05/07 15:57:20 UTC
svn commit: r942074 - in /cassandra/trunk:
src/java/org/apache/cassandra/avro/AvroValidation.java
src/java/org/apache/cassandra/thrift/ThriftValidation.java
test/system/test_thrift_server.py
Author: gdusbabek
Date: Fri May 7 13:57:20 2010
New Revision: 942074
URL: http://svn.apache.org/viewvc?rev=942074&view=rev
Log:
return error when mutating a non-existant CF. Patch by Sylvain Lebresne, reviewed by Gary Dusbabek. CASSANDRA-1036
Modified:
cassandra/trunk/src/java/org/apache/cassandra/avro/AvroValidation.java
cassandra/trunk/src/java/org/apache/cassandra/thrift/ThriftValidation.java
cassandra/trunk/test/system/test_thrift_server.py
Modified: cassandra/trunk/src/java/org/apache/cassandra/avro/AvroValidation.java
URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/avro/AvroValidation.java?rev=942074&r1=942073&r2=942074&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/avro/AvroValidation.java (original)
+++ cassandra/trunk/src/java/org/apache/cassandra/avro/AvroValidation.java Fri May 7 13:57:20 2010
@@ -185,6 +185,7 @@ public class AvroValidation {
static void validateDeletion(String keyspace, String cfName, Deletion del) throws InvalidRequestException
{
+ validateColumnFamily(keyspace, cfName);
if (del.super_column == null && del.predicate == null)
throw newInvalidRequestException("A Deletion must have a SuperColumn, a SlicePredicate, or both.");
Modified: cassandra/trunk/src/java/org/apache/cassandra/thrift/ThriftValidation.java
URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/thrift/ThriftValidation.java?rev=942074&r1=942073&r2=942074&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/thrift/ThriftValidation.java (original)
+++ cassandra/trunk/src/java/org/apache/cassandra/thrift/ThriftValidation.java Fri May 7 13:57:20 2010
@@ -260,6 +260,7 @@ public class ThriftValidation
public static void validateDeletion(String keyspace, String cfName, Deletion del) throws InvalidRequestException
{
+ validateColumnFamily(keyspace, cfName);
if (del.predicate != null)
{
validateSlicePredicate(keyspace, cfName, del.super_column, del.predicate);
Modified: cassandra/trunk/test/system/test_thrift_server.py
URL: http://svn.apache.org/viewvc/cassandra/trunk/test/system/test_thrift_server.py?rev=942074&r1=942073&r2=942074&view=diff
==============================================================================
--- cassandra/trunk/test/system/test_thrift_server.py (original)
+++ cassandra/trunk/test/system/test_thrift_server.py Fri May 7 13:57:20 2010
@@ -563,6 +563,22 @@ class TestMutations(ThriftTester):
ConsistencyLevel.ONE)
_expect_exception(send_range, InvalidRequestException)
+ def test_batch_mutate_does_not_accept_cosc_on_undefined_cf(self):
+ def bad_cf():
+ _set_keyspace('Keyspace1')
+ col = ColumnOrSuperColumn(column=Column("foo", 'bar', 0))
+ client.batch_mutate({'key_36': {'Undefined': [Mutation(col)]}},
+ ConsistencyLevel.ONE)
+ _expect_exception(bad_cf, InvalidRequestException)
+
+ def test_batch_mutate_does_not_accept_deletion_on_undefined_cf(self):
+ def bad_cf():
+ _set_keyspace('Keyspace1')
+ d = Deletion(2, predicate=SlicePredicate(column_names=['baz']))
+ client.batch_mutate({'key_37': {'Undefined':[Mutation(deletion=d)]}},
+ ConsistencyLevel.ONE)
+ _expect_exception(bad_cf, InvalidRequestException)
+
def test_column_name_lengths(self):
_set_keyspace('Keyspace1')
_expect_exception(lambda: client.insert('key1', ColumnParent('Standard1'), Column('', 'value', 0), ConsistencyLevel.ONE), InvalidRequestException)