[
https://issues.apache.org/jira/browse/CASSANDRA-8692?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14328016#comment-14328016
]
Benedict commented on CASSANDRA-8692:
-------------------------------------
There are some unnecessary changes we could split out to only hit trunk (such
as optional NODELAY), but there has to be at least a minimal touching of the
existing code. As it stands the most egregious such touch is the switch from
currentTimeMillis() to nanoTime() with a conversion that we perform back to
millis for serialization. It's unavoidable to at least call nanoTime(), but we
could perhaps call both instead, but that may have a material performance
impact (esp. on virtualized setups with a poor choice of clocksource)
Other than that, there is a switch of buffer size that is deferrable but safe,
and the movement of a small portion of code into an abstract "DisabledStrategy"
class from OTC, which is also very easily verifiable. We can even make it an
almost identical cut/paste, but that's probably unnecessary.
> Coalesce intra-cluster network messages
> ---------------------------------------
>
> Key: CASSANDRA-8692
> URL: https://issues.apache.org/jira/browse/CASSANDRA-8692
> Project: Cassandra
> Issue Type: Improvement
> Components: Core
> Reporter: Ariel Weisberg
> Assignee: Ariel Weisberg
> Fix For: 2.1.4
>
> Attachments: batching-benchmark.png
>
>
> While researching CASSANDRA-8457 we found that it is effective and can be
> done without introducing additional latency at low concurrency/throughput.
> The patch from that was used and found to be useful in a real life scenario
> so I propose we implement this in 2.1 in addition to 3.0.
> The change set is a single file and is small enough to be reviewable.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)