[
https://issues.apache.org/jira/browse/CASSANDRA-8692?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14310079#comment-14310079
]
Ariel Weisberg commented on CASSANDRA-8692:
-------------------------------------------
1-4 make sense. #5 you might be right I need to check. When I was doing the
unit tests I had a problem with a large sleep, but I think I fixed that after.
The timing of providing messages to the average doesn't matter since the
timestamp is generated by the submitter not the sending thread. It's already
only a vague stab at how often messages are arriving. Is assuming a uniform
distribution safe? You could be tricked into thinking coalescing makes sense
and then not do it effectively. Maybe with a smaller time horizon it would be
safer?
It seems like trying to do better would help bring down average latency by 100,
maybe 200, microseconds when latency is 2+ milliseconds. Average latency is
still competitive with no coalescing. Coalescing is turned off when there is
less load (and average latency is lower) so you don't feel the pinch there
either.
I am on the fence as to whether something smarter than a moving average counts
as scope creep. I see that as fodder for future iteration unless you want to
make the case that there is a scenario where the current implementation is not
a safe default and will give people a bad experience. Maybe that is something I
need to test for.
> 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)