incubator-cassandra-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Todd Nine <t...@spidertracks.com>
Subject Help with debugging DynamicCompositeType (Sylvain)
Date Tue, 09 Aug 2011 21:20:41 GMT
Hi guys,
  I'm working on the final updates to hector-jpa for 0.8.2, and I've run
into a bit of an issue.  Now that forward and reverse comparators are
natively supported, order by clauses on the indexes are natively sorted
in Cassandra.  I'm having some issues with my tests, here is my
scenario.

An index for a "Sale" object is defined with the following format 


name, order by sale date desc.


This translates into the following DynamicComposite.


UTF8Type + BytesType(reversed=true) + BytesType (the RK that contains
the sale item)


When I'm creating the composite, everything appears to be constructed
correctly, however when performing range scans where I only scan the
first component in the composite, the rows are not returned in the
reverse order as I expect, but rather in the order that would match a
UTF8Type+BytesType+BytesType encoding.

I've created a unit test that manually creates these columns the same as
my plugin, and it passes.  

https://gist.github.com/c8517fb4799676a246d8

This leads me to believe that the serialization of the column bytes on
the client is incorrectly encoded. 


Where would be the best location in the DynamicCompoisteType comparator
code to debug the columns as they are sorted?  This will help me pin
down the serialization problem, and ultimately get a 0.8.2 compatible
version of the plugin deployed.

Thanks,
Todd


Mime
View raw message