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

Sylvain Lebresne commented on CASSANDRA-5422:
---------------------------------------------

Let sum this up. The most important improvements (in term of performance gain) 
have already been committed to the Cassandra and the driver. So with the 
current code, I get up to 170K req/s for the "sanity check" (with 
MutationStatement.execute turned into a no-op). So imo this is saner: the 
stupid bottlenecks have been removed. So for the sake of a better tracking of 
changes, I move that we close this ticket as resolved and open specific tickets 
for the remaining improvements.

Talking of those remaining improvements, the 2 ones from Daniel's patches that 
remained to be considered/committed are:
# Write batching. I've opened CASSANDRA-5663. for this. I think we're pretty 
much good to go on that one, but [~danielnorberg], the batch code is in the 
commit that the other stuffs on you github branch. Would you mind extracting 
those bits and attach it to CASSANDRA-5663? Also, following what Jonathan 
pasted above, I think we'd want to move the Spotify copyright from the file 
header to the NOTICE file.
# Improving serialization. I've opened CASSANDRA-5664 for that one. I'd want to 
look that one further because 1) I haven't seen the improvement that Daniel has 
seen so I want to redo my testing, 2) the patch as it stands need a few 
modifications (it doesn't handle 'null' values correctly for instance) and 3) 
if we're going to do that change, I want to do it everywhere, not just for 
execute messages.

                
> Native protocol sanity check
> ----------------------------
>
>                 Key: CASSANDRA-5422
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-5422
>             Project: Cassandra
>          Issue Type: Bug
>          Components: API
>            Reporter: Jonathan Ellis
>            Assignee: Daniel Norberg
>         Attachments: 5422-test.txt, ExecuteMessage Profiling - Call Tree.png, 
> ExecuteMessage Profiling - Hot Spots.png
>
>
> With MutationStatement.execute turned into a no-op, I only get about 33k 
> insert_prepared ops/s on my laptop.  That is: this is an upper bound for our 
> performance if Cassandra were infinitely fast, limited by netty handling the 
> protocol + connections.
> This is up from about 13k/s with MS.execute running normally.
> ~40% overhead from netty seems awfully high to me, especially for 
> insert_prepared where the return value is tiny.  (I also used 4-byte column 
> values to minimize that part as well.)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to