Return-Path: X-Original-To: apmail-hbase-issues-archive@www.apache.org Delivered-To: apmail-hbase-issues-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 9BF8810EBD for ; Fri, 11 Jul 2014 10:24:06 +0000 (UTC) Received: (qmail 62798 invoked by uid 500); 11 Jul 2014 10:24:06 -0000 Delivered-To: apmail-hbase-issues-archive@hbase.apache.org Received: (qmail 62753 invoked by uid 500); 11 Jul 2014 10:24:06 -0000 Mailing-List: contact issues-help@hbase.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Delivered-To: mailing list issues@hbase.apache.org Received: (qmail 62740 invoked by uid 99); 11 Jul 2014 10:24:06 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 11 Jul 2014 10:24:06 +0000 Date: Fri, 11 Jul 2014 10:24:06 +0000 (UTC) From: "Nicolas Liochon (JIRA)" To: issues@hbase.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Updated] (HBASE-11492) The servers do not honor the tcpNoDelay option 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/HBASE-11492?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Nicolas Liochon updated HBASE-11492: ------------------------------------ Attachment: 11492.v1.withp1.patch > The servers do not honor the tcpNoDelay option > ---------------------------------------------- > > Key: HBASE-11492 > URL: https://issues.apache.org/jira/browse/HBASE-11492 > Project: HBase > Issue Type: Bug > Components: regionserver > Affects Versions: 0.92.2, 0.98.0, 0.96.0, 0.99.0, 0.94.20 > Reporter: Nicolas Liochon > Assignee: Nicolas Liochon > Priority: Critical > Fix For: 0.99.0, 0.98.5 > > Attachments: 11492.v1.patch, 11492.v1.withp1.patch > > > There is an option to set tcpNoDelay, defaulted to true, but the socket channel is actually not changed. As a consequence, the server works with nagle enabled. This leads to very degraded behavior when a single connection is shared between threads. We enter into conflicts with nagle and tcp delayed ack. > Here is an example of performance with the PE tool plus HBASE-11491: > {noformat} > oneCon #client sleep exeTime (seconds) avg latency, sleep excluded (microseconds) > true 1 0 31 310 > false 1 0 31 310 > true 2 0 50 500 > false 2 0 31 310 > true 2 5 488 (including 200s sleeping) 2880 > false 2 5 246 (including 200s sleeping) 460 > {noformat} > The latency is multiple by 5 (2880 vs 460) when the connection is shared. This is the delayed ack kicking in. This can be fixed by really using tcp no delay. > Any application sharing the tcp connection between threads has the issue. -- This message was sent by Atlassian JIRA (v6.2#6252)