You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Jeff Jirsa (JIRA)" <ji...@apache.org> on 2018/03/02 05:23:00 UTC

[jira] [Commented] (CASSANDRA-14261) Compaction Profiling Improvements

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

Jeff Jirsa commented on CASSANDRA-14261:
----------------------------------------

So I've re-run my trivial tests on a laptop just to demonstrate where the improvement lies, and the good thing is it repro's easily and consistently, which reinforces that it's real gain.

While I was there, I remembered that I had also cleaned up one additional check (isCounter() was checking instanceof for thrift, and with thrift removed, I believe this can be removed), which helps a bit more. 

Squashed patch here [https://github.com/jeffjirsa/cassandra/commit/d627dfbb3a7653d8c5a8c7a170a9621edbc1f1cd]

 
Here's the top threads with trunk:

!unpatched-hot-threads-top.png|height=400,width=800!

And expanded down to see the isDroppedColumn time: 

!unpatched-hot-threads.png|height=400,width=800!

And the trunk tlab allocation during this compaction test:

!unpatched-tlab.png|height=400,width=800!

After applying these patches (except the isCounter() patch, which I did after this run, note that BTreeBuilder.resolve() has fallen significantly (as isDroppedColumn become trivially cheap):

!patched-hot-threads.png|height=400,width=800!

And tlab allocation (note we've done the same compaction, but allocated 500MB fewer empty iterators): 

!patched-tlab.png|height=400,width=800!




> Compaction Profiling Improvements
> ---------------------------------
>
>                 Key: CASSANDRA-14261
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-14261
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Compaction
>            Reporter: Jeff Jirsa
>            Assignee: Jeff Jirsa
>            Priority: Minor
>             Fix For: 4.x
>
>         Attachments: patched-hot-threads.png, patched-tlab.png, unpatched-hot-threads-top.png, unpatched-hot-threads.png, unpatched-tlab.png
>
>
> There's some low hanging fruit in some laptop compaction runs, such as creating a ton of the same object unnecessarily and hashing cell names repeatedly to see if a column is dropped even when we should know that the table has no dropped columns. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org