[ 
https://issues.apache.org/jira/browse/CASSANDRA-6692?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13932634#comment-13932634
 ] 

Jonathan Ellis commented on CASSANDRA-6692:
-------------------------------------------

Strongly dislike this pattern:

{code}
        if (updateF == null)
            updateF = UpdateFunction.NoOp.instance();
{code}

Prefer not modifying parameters (making caller pass NoOp) and optionally adding 
an assert to make it obvious.  Will commit with that change.

> AtomicBTreeColumns Improvements
> -------------------------------
>
>                 Key: CASSANDRA-6692
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-6692
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Benedict
>            Assignee: Benedict
>            Priority: Minor
>              Labels: easyfix, performance
>             Fix For: 2.1 beta2
>
>         Attachments: 6692.3.txt, 6692.fix, patch.txt
>
>
> There are two improvements to make to the BTree code that should help:
> 1) It turns out Stack Allocation is more rubbish than we had hoped, and so 
> the fast route actually allocates garbage. It's unlikely this reduces 
> throughput, but the increased young-gen pressure is probably unwelcome. I 
> propose to remove the fast route for now.
> 2) It is not uncommon to race to perform an update, so that the new values 
> are actually out-of-date when we come to modify the tree. In this case the 
> update should recognise that the original (portion of) the tree has not been 
> modified, and simply return it, without allocating a new one.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to