Return-Path: X-Original-To: apmail-cassandra-commits-archive@www.apache.org Delivered-To: apmail-cassandra-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id E2F0210DC4 for ; Thu, 19 Feb 2015 19:48:16 +0000 (UTC) Received: (qmail 18364 invoked by uid 500); 19 Feb 2015 19:48:13 -0000 Delivered-To: apmail-cassandra-commits-archive@cassandra.apache.org Received: (qmail 18326 invoked by uid 500); 19 Feb 2015 19:48:13 -0000 Mailing-List: contact commits-help@cassandra.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cassandra.apache.org Delivered-To: mailing list commits@cassandra.apache.org Received: (qmail 18314 invoked by uid 99); 19 Feb 2015 19:48:13 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 19 Feb 2015 19:48:13 +0000 Date: Thu, 19 Feb 2015 19:48:13 +0000 (UTC) From: "Benedict (JIRA)" To: commits@cassandra.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (CASSANDRA-8692) Coalesce intra-cluster network messages MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ 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)