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 7DB601816F for ; Mon, 8 Feb 2016 10:36:40 +0000 (UTC) Received: (qmail 68960 invoked by uid 500); 8 Feb 2016 10:36:40 -0000 Delivered-To: apmail-hbase-issues-archive@hbase.apache.org Received: (qmail 68907 invoked by uid 500); 8 Feb 2016 10:36:40 -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 68795 invoked by uid 99); 8 Feb 2016 10:36:40 -0000 Received: from arcas.apache.org (HELO arcas) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 08 Feb 2016 10:36:40 +0000 Received: from arcas.apache.org (localhost [127.0.0.1]) by arcas (Postfix) with ESMTP id D71E92C1F5D for ; Mon, 8 Feb 2016 10:36:39 +0000 (UTC) Date: Mon, 8 Feb 2016 10:36:39 +0000 (UTC) From: "Hudson (JIRA)" To: issues@hbase.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (HBASE-15221) HTableMultiplexer improvements (stale region locations and resource leaks) 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-15221?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15136795#comment-15136795 ] Hudson commented on HBASE-15221: -------------------------------- SUCCESS: Integrated in HBase-1.3 #544 (See [https://builds.apache.org/job/HBase-1.3/544/]) HBASE-15221 Reload the cache on re-tried puts in HTableMultiplexer and (busbey: rev 01b73e9877ccac6faed941fc83351955b642fc09) * hbase-client/pom.xml * hbase-client/src/test/java/org/apache/hadoop/hbase/client/TestHTableMultiplexerViaMocks.java * hbase-client/src/main/java/org/apache/hadoop/hbase/client/HTableMultiplexer.java > HTableMultiplexer improvements (stale region locations and resource leaks) > -------------------------------------------------------------------------- > > Key: HBASE-15221 > URL: https://issues.apache.org/jira/browse/HBASE-15221 > Project: HBase > Issue Type: Bug > Components: Client > Reporter: Josh Elser > Assignee: Josh Elser > Priority: Critical > Fix For: 2.0.0, 1.2.0, 1.3.0, 1.1.4, 0.98.18 > > Attachments: HBASE-15221.001.patch, HBASE-15221.002.patch, HBASE-15221.003.patch, HBASE-15221.branch-1.patch, HBASE-15221.v4.patch > > > It looks like HTableMultiplexer has a couple of issues. > Upon failing to send a Put to the appropriate RS, the Put is re-queued back into the system. Normally this is fine as such an exception is transient and the Put would eventually succeed. However, in the case where the Put was rejected because of a NotServingRegionException (e.g. split, balance, merge), the re-queuing of the Put will end up using the same cached HRegionLocation. This means that the Put will just be repeatedly sent back to the same RS over and over again, eventually being dropped on the floor. Need to invalidate the location cache (or make sure we refresh it) when we re-queue the Put. > The internal ClusterConnection is also leaked. If a user creates many HTableMultiplexers, they'll eventually run into issues (memory, zk connections, etc) because they'll never get cleaned up. HTableMultiplexer needs a close method. -- This message was sent by Atlassian JIRA (v6.3.4#6332)