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 85CAB98F2 for ; Fri, 13 Apr 2012 21:37:44 +0000 (UTC) Received: (qmail 45450 invoked by uid 500); 13 Apr 2012 21:37:44 -0000 Delivered-To: apmail-hbase-issues-archive@hbase.apache.org Received: (qmail 45381 invoked by uid 500); 13 Apr 2012 21:37:44 -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 45363 invoked by uid 99); 13 Apr 2012 21:37:44 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 13 Apr 2012 21:37:44 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED,T_RP_MATCHES_RCVD X-Spam-Check-By: apache.org Received: from [140.211.11.116] (HELO hel.zones.apache.org) (140.211.11.116) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 13 Apr 2012 21:37:42 +0000 Received: from hel.zones.apache.org (hel.zones.apache.org [140.211.11.116]) by hel.zones.apache.org (Postfix) with ESMTP id DFDF836918F for ; Fri, 13 Apr 2012 21:37:22 +0000 (UTC) Date: Fri, 13 Apr 2012 21:37:22 +0000 (UTC) From: "Phabricator (Updated) (JIRA)" To: issues@hbase.apache.org Message-ID: <1187546544.23779.1334353042918.JavaMail.tomcat@hel.zones.apache.org> In-Reply-To: <1755294650.19490.1334267000847.JavaMail.tomcat@hel.zones.apache.org> Subject: [jira] [Updated] (HBASE-5776) HTableMultiplexer MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/HBASE-5776?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Phabricator updated HBASE-5776: ------------------------------- Attachment: D2775.2.patch Liyin updated the revision "[jira][89-fb][HBASE-5776] HTableMultiplexer". Reviewers: Kannan As discussed with Kannan offline, HTableMultiplexer will keep a pool htable instance. So user doesn't need to pass the htable as parameter for the put request. Also keep each put retrying several times before failing and clear the cache location after failing. Add more java doc and license. REVISION DETAIL https://reviews.facebook.net/D2775 AFFECTED FILES src/main/java/org/apache/hadoop/hbase/HConstants.java src/main/java/org/apache/hadoop/hbase/client/HConnection.java src/main/java/org/apache/hadoop/hbase/client/HConnectionManager.java src/main/java/org/apache/hadoop/hbase/client/HTable.java src/main/java/org/apache/hadoop/hbase/client/HTableMultiplexer.java src/main/java/org/apache/hadoop/hbase/client/MultiPut.java src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java src/test/java/org/apache/hadoop/hbase/client/TestHTableMultiplexer.java > HTableMultiplexer > ------------------ > > Key: HBASE-5776 > URL: https://issues.apache.org/jira/browse/HBASE-5776 > Project: HBase > Issue Type: Improvement > Reporter: Liyin Tang > Assignee: Liyin Tang > Attachments: D2775.1.patch, D2775.1.patch, D2775.2.patch, D2775.2.patch > > > There is a known issue in HBase client that single slow/dead region server could slow down the multiput operations across all the region servers. So the HBase client will be as slow as the slowest region server in the cluster. > > To solve this problem, HTableMultiplexer will separate the multiput submitting threads with the flush threads, which means the multiput operation will be a nonblocking operation. > The submitting thread will shard all the puts into different queues based on its destination region server and return immediately. The flush threads will flush these puts from each queue to its destination region server. > Currently the HTableMultiplexer only supports the put operation. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira