[
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