Author: jbellis
Date: Tue Oct 13 15:48:53 2009
New Revision: 824816

URL: http://svn.apache.org/viewvc?rev=824816&view=rev
Log:
merge from 0.4 branch

Modified:
    incubator/cassandra/trunk/   (props changed)
    
incubator/cassandra/trunk/interface/gen-java/org/apache/cassandra/service/Cassandra.java
   (props changed)
    
incubator/cassandra/trunk/interface/gen-java/org/apache/cassandra/service/Column.java
   (props changed)
    
incubator/cassandra/trunk/interface/gen-java/org/apache/cassandra/service/InvalidRequestException.java
   (props changed)
    
incubator/cassandra/trunk/interface/gen-java/org/apache/cassandra/service/NotFoundException.java
   (props changed)
    
incubator/cassandra/trunk/interface/gen-java/org/apache/cassandra/service/SuperColumn.java
   (props changed)
    incubator/cassandra/trunk/src/java/org/   (props changed)
    
incubator/cassandra/trunk/src/java/org/apache/cassandra/service/CassandraServer.java
    incubator/cassandra/trunk/test/system/test_server.py
    incubator/cassandra/trunk/test/unit/org/   (props changed)

Propchange: incubator/cassandra/trunk/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Oct 13 15:48:53 2009
@@ -1,2 +1,2 @@
 /incubator/cassandra/branches/cassandra-0.3:774578-796573
-/incubator/cassandra/branches/cassandra-0.4:810145-824463
+/incubator/cassandra/branches/cassandra-0.4:810145-824815

Propchange: 
incubator/cassandra/trunk/interface/gen-java/org/apache/cassandra/service/Cassandra.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Oct 13 15:48:53 2009
@@ -1,3 +1,3 @@
 
/incubator/cassandra/branches/cassandra-0.3/interface/gen-java/org/apache/cassandra/service/Cassandra.java:774578-796573
-/incubator/cassandra/branches/cassandra-0.4/interface/gen-java/org/apache/cassandra/service/Cassandra.java:810145-824463
+/incubator/cassandra/branches/cassandra-0.4/interface/gen-java/org/apache/cassandra/service/Cassandra.java:810145-824815
 
/incubator/cassandra/trunk/interface/gen-java/org/apache/cassandra/service/Cassandra.java:749219-768588

Propchange: 
incubator/cassandra/trunk/interface/gen-java/org/apache/cassandra/service/Column.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Oct 13 15:48:53 2009
@@ -1,4 +1,4 @@
 
/incubator/cassandra/branches/cassandra-0.3/interface/gen-java/org/apache/cassandra/service/column_t.java:774578-792198
-/incubator/cassandra/branches/cassandra-0.4/interface/gen-java/org/apache/cassandra/service/Column.java:810145-824463
+/incubator/cassandra/branches/cassandra-0.4/interface/gen-java/org/apache/cassandra/service/Column.java:810145-824815
 
/incubator/cassandra/trunk/interface/gen-java/org/apache/cassandra/service/Column.java:749219-794428
 
/incubator/cassandra/trunk/interface/gen-java/org/apache/cassandra/service/column_t.java:749219-768588

Propchange: 
incubator/cassandra/trunk/interface/gen-java/org/apache/cassandra/service/InvalidRequestException.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Oct 13 15:48:53 2009
@@ -1,3 +1,3 @@
 
/incubator/cassandra/branches/cassandra-0.3/interface/gen-java/org/apache/cassandra/service/InvalidRequestException.java:774578-796573
-/incubator/cassandra/branches/cassandra-0.4/interface/gen-java/org/apache/cassandra/service/InvalidRequestException.java:810145-824463
+/incubator/cassandra/branches/cassandra-0.4/interface/gen-java/org/apache/cassandra/service/InvalidRequestException.java:810145-824815
 
/incubator/cassandra/trunk/interface/gen-java/org/apache/cassandra/service/InvalidRequestException.java:749219-768588

Propchange: 
incubator/cassandra/trunk/interface/gen-java/org/apache/cassandra/service/NotFoundException.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Oct 13 15:48:53 2009
@@ -1,3 +1,3 @@
 
/incubator/cassandra/branches/cassandra-0.3/interface/gen-java/org/apache/cassandra/service/NotFoundException.java:774578-796573
-/incubator/cassandra/branches/cassandra-0.4/interface/gen-java/org/apache/cassandra/service/NotFoundException.java:810145-824463
+/incubator/cassandra/branches/cassandra-0.4/interface/gen-java/org/apache/cassandra/service/NotFoundException.java:810145-824815
 
/incubator/cassandra/trunk/interface/gen-java/org/apache/cassandra/service/NotFoundException.java:749219-768588

Propchange: 
incubator/cassandra/trunk/interface/gen-java/org/apache/cassandra/service/SuperColumn.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Oct 13 15:48:53 2009
@@ -1,4 +1,4 @@
 
/incubator/cassandra/branches/cassandra-0.3/interface/gen-java/org/apache/cassandra/service/superColumn_t.java:774578-792198
-/incubator/cassandra/branches/cassandra-0.4/interface/gen-java/org/apache/cassandra/service/SuperColumn.java:810145-824463
+/incubator/cassandra/branches/cassandra-0.4/interface/gen-java/org/apache/cassandra/service/SuperColumn.java:810145-824815
 
/incubator/cassandra/trunk/interface/gen-java/org/apache/cassandra/service/SuperColumn.java:749219-794428
 
/incubator/cassandra/trunk/interface/gen-java/org/apache/cassandra/service/superColumn_t.java:749219-768588

Propchange: incubator/cassandra/trunk/src/java/org/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Oct 13 15:48:53 2009
@@ -1,3 +1,3 @@
 /incubator/cassandra/branches/cassandra-0.3/src/java/org:774578-796573
-/incubator/cassandra/branches/cassandra-0.4/src/java/org:810145-824463
+/incubator/cassandra/branches/cassandra-0.4/src/java/org:810145-824815
 /incubator/cassandra/trunk/src/java/org:749219-769885

Modified: 
incubator/cassandra/trunk/src/java/org/apache/cassandra/service/CassandraServer.java
URL: 
http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/service/CassandraServer.java?rev=824816&r1=824815&r2=824816&view=diff
==============================================================================
--- 
incubator/cassandra/trunk/src/java/org/apache/cassandra/service/CassandraServer.java
 (original)
+++ 
incubator/cassandra/trunk/src/java/org/apache/cassandra/service/CassandraServer.java
 Tue Oct 13 15:48:53 2009
@@ -80,11 +80,6 @@
 
         Map<String, ColumnFamily> columnFamilyKeyMap = new 
HashMap<String,ColumnFamily>();
 
-        for (ReadCommand command: commands)
-        {
-            ThriftValidation.validateKey(command.key);
-        }
-
         if (consistency_level == ConsistencyLevel.ZERO)
         {
             throw new InvalidRequestException("Consistency level zero may not 
be applied to read operations");
@@ -238,13 +233,19 @@
         if (predicate.column_names != null)
         {
             for (String key: keys)
+            {
+                ThriftValidation.validateKey(key);
                 commands.add(new SliceByNamesReadCommand(keyspace, key, 
column_parent, predicate.column_names));
+            }
             ThriftValidation.validateColumns(keyspace, column_parent, 
predicate.column_names);
         }
         else
         {
             for (String key: keys)
+            {
+                ThriftValidation.validateKey(key);
                 commands.add(new SliceFromReadCommand(keyspace, key, 
column_parent, range.start, range.finish, range.reversed, range.count));
+            }
             ThriftValidation.validateRange(keyspace, column_parent, range);
         }
 
@@ -318,6 +319,7 @@
         List<ReadCommand> commands = new ArrayList<ReadCommand>();
         for (String key: keys)
         {
+            ThriftValidation.validateKey(key);
             commands.add(new SliceByNamesReadCommand(table, key, path, 
nameAsList));
         }
 
@@ -380,6 +382,7 @@
         List<ReadCommand> commands = new ArrayList<ReadCommand>();
         for (String key: keys)
         {
+            ThriftValidation.validateKey(key);
             commands.add(new SliceFromReadCommand(table, key, column_parent, 
ArrayUtils.EMPTY_BYTE_ARRAY, ArrayUtils.EMPTY_BYTE_ARRAY, true, 
Integer.MAX_VALUE));
         }
 
@@ -409,7 +412,7 @@
         ThriftValidation.validateKey(key);
         ThriftValidation.validateColumnPath(table, column_path);
 
-        RowMutation rm = new RowMutation(table, key.trim());
+        RowMutation rm = new RowMutation(table, key);
         try
         {
             rm.add(new QueryPath(column_path), value, timestamp);
@@ -426,6 +429,7 @@
     {
         if (logger.isDebugEnabled())
             logger.debug("batch_insert");
+        ThriftValidation.validateKey(key);
 
         for (String cfName : cfmap.keySet())
         {
@@ -453,9 +457,10 @@
     {
         if (logger.isDebugEnabled())
             logger.debug("remove");
+        ThriftValidation.validateKey(key);
         ThriftValidation.validateColumnPathOrParent(table, column_path);
         
-        RowMutation rm = new RowMutation(table, key.trim());
+        RowMutation rm = new RowMutation(table, key);
         rm.delete(new QueryPath(column_path), timestamp);
 
         doInsert(consistency_level, rm);

Modified: incubator/cassandra/trunk/test/system/test_server.py
URL: 
http://svn.apache.org/viewvc/incubator/cassandra/trunk/test/system/test_server.py?rev=824816&r1=824815&r2=824816&view=diff
==============================================================================
--- incubator/cassandra/trunk/test/system/test_server.py (original)
+++ incubator/cassandra/trunk/test/system/test_server.py Tue Oct 13 15:48:53 
2009
@@ -289,6 +289,11 @@
     def test_bad_calls(self):
         # supercolumn in a non-super CF
         _expect_exception(lambda: client.insert('Keyspace1', 'key1', 
ColumnPath('Standard1', 'x', 'y'), 'value', 0, ConsistencyLevel.ONE), 
InvalidRequestException)
+        # empty key
+        _expect_exception(lambda: client.get('Keyspace1', '', 
ColumnPath('Standard1', column='c1'), ConsistencyLevel.ONE), 
InvalidRequestException)
+        cfmap = {'Super1': [ColumnOrSuperColumn(super_column=c) for c in 
_SUPER_COLUMNS],
+                 'Super2': [ColumnOrSuperColumn(super_column=c) for c in 
_SUPER_COLUMNS]}
+        _expect_exception(lambda: client.batch_insert('Keyspace1', '', cfmap, 
ConsistencyLevel.ONE), InvalidRequestException)
         # get doesn't specify column name
         _expect_exception(lambda: client.get('Keyspace1', 'key1', 
ColumnPath('Standard1'), ConsistencyLevel.ONE), InvalidRequestException)
         # supercolumn in a non-super CF

Propchange: incubator/cassandra/trunk/test/unit/org/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Oct 13 15:48:53 2009
@@ -1,3 +1,3 @@
 /incubator/cassandra/branches/cassandra-0.3/test/unit/org:774578-796573
-/incubator/cassandra/branches/cassandra-0.4/test/unit/org:810145-824463
+/incubator/cassandra/branches/cassandra-0.4/test/unit/org:810145-824815
 /incubator/cassandra/trunk/test/unit/org:749219-768583


Reply via email to