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 6817D19879 for ; Wed, 30 Mar 2016 16:02:26 +0000 (UTC) Received: (qmail 58113 invoked by uid 500); 30 Mar 2016 16:02:26 -0000 Delivered-To: apmail-hbase-issues-archive@hbase.apache.org Received: (qmail 57799 invoked by uid 500); 30 Mar 2016 16:02:25 -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 57564 invoked by uid 99); 30 Mar 2016 16:02:25 -0000 Received: from arcas.apache.org (HELO arcas) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 30 Mar 2016 16:02:25 +0000 Received: from arcas.apache.org (localhost [127.0.0.1]) by arcas (Postfix) with ESMTP id 9D67F2C1F68 for ; Wed, 30 Mar 2016 16:02:25 +0000 (UTC) Date: Wed, 30 Mar 2016 16:02:25 +0000 (UTC) From: "Ted Yu (JIRA)" To: issues@hbase.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Updated] (HBASE-15327) Canary will always invoke admin.balancer() in each sniffing period when writeSniffing is enabled 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-15327?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ted Yu updated HBASE-15327: --------------------------- Resolution: Fixed Hadoop Flags: Reviewed Fix Version/s: 1.3.0 Status: Resolved (was: Patch Available) Thanks for the patch, Jianwei. Thanks for the review, Stack. > Canary will always invoke admin.balancer() in each sniffing period when writeSniffing is enabled > ------------------------------------------------------------------------------------------------ > > Key: HBASE-15327 > URL: https://issues.apache.org/jira/browse/HBASE-15327 > Project: HBase > Issue Type: Bug > Components: canary > Affects Versions: 2.0.0 > Reporter: Jianwei Cui > Assignee: Jianwei Cui > Priority: Minor > Fix For: 2.0.0, 1.3.0, 1.4.0 > > Attachments: HBASE-15327-branch-1-v1.patch, HBASE-15327-trunk.patch, HBASE-15327-trunk.patch, HBASE-15327-v1.patch > > > When Canary#writeSniffing is enabled, Canary#checkWriteTableDistribution will make sure the regions of write table distributed on all region servers as: > {code} > int numberOfServers = admin.getClusterStatus().getServers().size(); > ...... > int numberOfCoveredServers = serverSet.size(); > if (numberOfCoveredServers < numberOfServers) { > admin.balancer(); > } > {code} > The master will also work as a regionserver, so that ClusterStatus#getServers will contain the master. On the other hand, write table of Canary will not be assigned to master, making numberOfCoveredServers always smaller than numberOfServers and admin.balancer always be invoked in each sniffing period. This may cause frequent region moves. A simple fix is excluding master from numberOfServers. -- This message was sent by Atlassian JIRA (v6.3.4#6332)