Sure thing. Here it is: https://issues.apache.org/jira/browse/CASSANDRA-920
On Thu, Mar 25, 2010 at 4:44 PM, Jonathan Ellis <[email protected]> wrote: > Can you create a ticket with a test case? > > On Thu, Mar 25, 2010 at 3:39 PM, Bob Florian <[email protected]> wrote: >> I was originally using 0.5.0 but I've reproduced the behavior with >> 0.5.1 and 0.6.0-beta3. >> >> >> On Wed, Mar 24, 2010 at 3:00 PM, Jonathan Ellis <[email protected]> wrote: >>> Are you using 0.5.0? Because this sounds like a bug that was fixed in >>> 0.5.1. >>> >>> On Mon, Mar 22, 2010 at 5:13 PM, Bob Florian <[email protected]> wrote: >>>> I'm new to Cassandra and have run into a problem that I think is a >>>> bug, but wanted to get some feedback in case I'm misunderstanding >>>> something. >>>> >>>> I've found that when I delete an entire row in a column family with >>>> super columns, and then re-insert values with the same row and super >>>> column keys, the count parameter to the get_slice call no longer works >>>> properly. Its like it is still counting the deleted columns, but only >>>> returning the new columns. >>>> >>>> The following example uses the Ruby Cassandra client (see link below), >>>> but I've seen the same behavior with the Java Thrift interface. >>>> >>>> 1) First I create a client and insert a super column with three columns: >>>> >>>>>> require 'cassandra' >>>> => true >>>>>> cc = Cassandra.new('Keyspace1') >>>> => #<Cassandra:2159536540, @keyspace="Keyspace1", @schema={}, >>>> @servers=["127.0.0.1:9160"]> >>>>>> cc.insert(:Super1,'test1',{'bucket1' => {'1' => 'Item 1', '2' => 'Item >>>>>> 2', '5' => 'Item 5'}}) >>>> => nil >>>> >>>> >>>> 2) Getting the slice of columns just inserted works with or without >>>> the count parameter: >>>> >>>>>> cc.get(:Super1,'test1','bucket1') >>>> => #<OrderedHash {"1"=>"Item 1", "2"=>"Item 2", "5"=>"Item 5"}> >>>> >>>>>> cc.get(:Super1,'test1','bucket1',:count => 3) >>>> => #<OrderedHash {"1"=>"Item 1", "2"=>"Item 2", "5"=>"Item 5"}> >>>> >>>> >>>> 3) Now I remove the row: >>>> >>>>>> cc.remove(:Super1,'test1') >>>> => nil >>>> >>>> >>>> 4) And confirm that nothing's left: >>>>>> cc.get(:Super1,'test1','bucket1') >>>> => #<OrderedHash {}> >>>> >>>> >>>> 5) Next I insert 3 different columns using the same row and super column >>>> keys: >>>> >>>>>> cc.insert(:Super1,'test1',{'bucket1' => {'3' => 'Item 3', '4' => 'Item >>>>>> 4', '6' => 'Item 6'}}) >>>> => nil >>>> >>>> >>>> 6) Getting the slice of columns works correctly with no count parameter: >>>> >>>>>> cc.get(:Super1,'test1','bucket1') >>>> => #<OrderedHash {"6"=>"Item 6", "3"=>"Item 3", "4"=>"Item 4"}> >>>> >>>> >>>> 7) But setting the count parameter to 3 returns fewer than 3 columns: >>>> >>>>>> cc.get(:Super1,'test1','bucket1',:count => 3) >>>> => #<OrderedHash {"3"=>"Item 3"}> >>>> >>>> >>>> 8) Incrementally increasing the count parameter confirms the apparent >>>> behavior of counting the deleted columns: >>>> >>>>>> cc.get(:Super1,'test1','bucket1',:count => 4) >>>> => #<OrderedHash {"3"=>"Item 3", "4"=>"Item 4"}> >>>>>> cc.get(:Super1,'test1','bucket1',:count => 5) >>>> => #<OrderedHash {"3"=>"Item 3", "4"=>"Item 4"}> >>>> >>>> >>>> 9) I have to set the count to 6 to return all 3 columns: >>>> >>>>>> cc.get(:Super1,'test1','bucket1',:count => 6) >>>> => #<OrderedHash {"6"=>"Item 6", "3"=>"Item 3", "4"=>"Item 4"}> >>>> >>>> >>>> The same thing doesn't happen when I remove only the super column key >>>> ('bucket1'). >>>> >>>> Here's the reference to the Ruby client I used for the example, but >>>> the problem is not client specific. >>>> http://blog.evanweaver.com/files/doc/fauna/cassandra/files/README_rdoc.html >>>> >>> >> >
