cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jonathan Shook <jsh...@gmail.com>
Subject Re: Perl/Thrift/Cassandra strangeness
Date Tue, 08 Jun 2010 19:39:49 GMT
I can't divulge this particular test data, as it was borrowed from a
dataset which is not public.
I will see if I can reproduce the scenario, however, using other data
suitable for a bug report.

On Tue, Jun 8, 2010 at 2:18 PM, Jonathan Ellis <jbellis@gmail.com> wrote:
> 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