cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Benedict (JIRA)" <>
Subject [jira] [Commented] (CASSANDRA-6934) Optimise Byte + CellName comparisons
Date Fri, 25 Apr 2014 16:26:17 GMT


Benedict commented on CASSANDRA-6934:

I've pushed a new branch [here|]

This branch does away with all of the changes to start/end semantics when you want to select
everything. There were still more things to deal with, and the patch was getting much too
unwieldy for the benefit that would have conferred. I'd have liked to clean up the semantics,
but I think that's a problem for another day/ticket since we can get 99% of our benefit without

I think I've addressed all your concerns, with the following notes:
# Instead of ordinal() I just use eoc.compareTo() - the same concern applies, but given ordering
of an enum is part of its definition, it shouldn't be a risk (I would -1 any change that ordered
them differently to their natural ordering)
# Not sure which newline you're referring to, scoured my patch to find a constructor with
a field I'd added directly above and couldn't see one
# There were a couple of bugs in your rejig of NodeBuilder.update, but fixed them and also
simplified it a bit further by extracting the POSITIVE_INFINITY behaviour into a separate
method that is explicitly invoked when necessary
# Further optimised away the isStatic test in applicable types, as I'm pretty sure the sort
order will remain unchanged.
# Eliminated all of the null checks in types, and simplified any empty checks
# Modified compare() behaviours to support EOCs being set on both types, as it _can_ happen
(and if both are END it was broken)
# Modified SimpleCType + AbstractSimpleCellNameType compares to support both parameters being

> Optimise Byte + CellName comparisons
> ------------------------------------
>                 Key: CASSANDRA-6934
>                 URL:
>             Project: Cassandra
>          Issue Type: Improvement
>            Reporter: Benedict
>            Assignee: Benedict
>              Labels: performance
>             Fix For: 2.1.0
> AbstractCompositeType is called a lot, so deserves some heavy optimisation. SimpleCellNameType
can be optimised easily, but should explore other potential optimisations.

This message was sent by Atlassian JIRA

View raw message