cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jonathan Ellis <jbel...@gmail.com>
Subject Re: Perl/Thrift/Cassandra strangeness
Date Tue, 08 Jun 2010 19:18:41 GMT
that does sound like a bug.  can you give us the data to insert that
allows reproducing this?

On Tue, Jun 8, 2010 at 10:20 AM, Jonathan Shook <jshook@gmail.com> wrote:
> Possible bug...
>
> Using a slice range with the empty sentinel values, and a count of 1
> sometimes yields 2 ColumnOrSuperColumns, sometimes 1.
> The inconsistency had lead me to believe that the count was not
> working, hence the additional confusion.
>
> There was a particular key which returns exactly 2
> ColumnOrSuperColumns. This happened repeatedly, even when other data
> was inserted before or after. All of the other keys were returning the
> expected 1 ColumnOrSuperColumn.
>
> Once I added a 4th super column to the key in question, it started
> behaving the same as the others, yielding exactly 1
> ColumnOrSuperColumn.
>
> here is the code: for the predicate:
>
>        my $predicate = new Cassandra::SlicePredicate();
>        my $slice_range = new Cassandra::SliceRange();
>        $slice_range->{start} = '';
>        $slice_range->{finish} = '';
>        $slice_range->{reversed} = 1;
>        $slice_range->{count} = 1;
>        $predicate->{slice_range} = $slice_range;
>
> The columns are in the right order (reversed), so I'll get what I need
> by accessing only the first result in each slice. If I wanted to
> iterate the returned list of slices, it would manifest as a bug in my
> client.
>
> (Cassandra 6.1/Thrift/Perl)
>
>
> On Tue, Jun 8, 2010 at 11:18 AM, Jonathan Shook <jshook@gmail.com> wrote:
>> I was misreading the result with the original slice range.
>> I should have been expecting exactly 2 ColumnOrSuperColumns, which is
>> what I got. I was erroneously expecting only 1.
>>
>> Thanks!
>> Jonathan
>>
>>
>> 2010/6/8 Ted Zlatanov <tzz@lifelogs.com>:
>>> On Mon, 7 Jun 2010 17:20:56 -0500 Jonathan Shook <jshook@gmail.com> wrote:
>>>
>>> JS> The point is to get the "last" super-column.
>>> ...
>>> JS> Is the Perl Thrift client problematic, or is there something else that
>>> JS> I am missing?
>>>
>>> Try Net::Cassandra::Easy; if it does what you want, look at the debug
>>> output or trace the code to see how the predicate is specified so you
>>> can duplicate that in your own code.
>>>
>>> In general yes, the Perl Thrift interface is problematic.  It's slow and
>>> semantically inconsistent.
>>>
>>> Ted
>>>
>>>
>>
>



-- 
Jonathan Ellis
Project Chair, Apache Cassandra
co-founder of Riptano, the source for professional Cassandra support
http://riptano.com

Mime
View raw message