Author: jbellis
Date: Tue Apr 21 03:06:01 2009
New Revision: 766961

URL: http://svn.apache.org/viewvc?rev=766961&view=rev
Log:
allow SuperColumn.getSubColumn to return null.  patch by Sandeep Tata; reviewed 
by jbellis for #91

Added:
    incubator/cassandra/trunk/test/org/apache/cassandra/db/SuperColumnTest.java
Modified:
    incubator/cassandra/trunk/src/org/apache/cassandra/db/SuperColumn.java

Modified: incubator/cassandra/trunk/src/org/apache/cassandra/db/SuperColumn.java
URL: 
http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/org/apache/cassandra/db/SuperColumn.java?rev=766961&r1=766960&r2=766961&view=diff
==============================================================================
--- incubator/cassandra/trunk/src/org/apache/cassandra/db/SuperColumn.java 
(original)
+++ incubator/cassandra/trunk/src/org/apache/cassandra/db/SuperColumn.java Tue 
Apr 21 03:06:01 2009
@@ -80,7 +80,7 @@
     public IColumn getSubColumn(String columnName)
     {
         IColumn column = columns_.get(columnName);
-        assert column instanceof Column;
+        assert column == null || column instanceof Column;
         return column;
     }
 
@@ -169,7 +169,6 @@
     public byte[] value(String key)
     {
        IColumn column = columns_.get(key);
-       assert column instanceof Column;
        if ( column != null )
                return column.value();
        throw new IllegalArgumentException("Value was requested for a column 
that does not exist.");

Added: 
incubator/cassandra/trunk/test/org/apache/cassandra/db/SuperColumnTest.java
URL: 
http://svn.apache.org/viewvc/incubator/cassandra/trunk/test/org/apache/cassandra/db/SuperColumnTest.java?rev=766961&view=auto
==============================================================================
--- incubator/cassandra/trunk/test/org/apache/cassandra/db/SuperColumnTest.java 
(added)
+++ incubator/cassandra/trunk/test/org/apache/cassandra/db/SuperColumnTest.java 
Tue Apr 21 03:06:01 2009
@@ -0,0 +1,17 @@
+package org.apache.cassandra.db;
+
+import static org.testng.Assert.assertNotNull;
+import static org.testng.Assert.assertNull;
+
+import org.testng.annotations.Test;
+public class SuperColumnTest
+{   
+    @Test
+    public void testMissingSubcolumn() {
+       byte[] val = "sample value".getBytes();
+       SuperColumn sc = new SuperColumn("sc1");
+       sc.addColumn("col1", new Column("col1",val,1L));
+       assertNotNull(sc.getSubColumn("col1"));
+       assertNull(sc.getSubColumn("col2"));
+    }
+}


Reply via email to