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 A570410A40 for ; Thu, 7 Nov 2013 07:01:38 +0000 (UTC) Received: (qmail 70710 invoked by uid 500); 7 Nov 2013 07:01:30 -0000 Delivered-To: apmail-hbase-issues-archive@hbase.apache.org Received: (qmail 70668 invoked by uid 500); 7 Nov 2013 07:01:30 -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 70642 invoked by uid 99); 7 Nov 2013 07:01:28 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 07 Nov 2013 07:01:28 +0000 Date: Thu, 7 Nov 2013 07:01:28 +0000 (UTC) From: "stack (JIRA)" To: issues@hbase.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (HBASE-7403) Online Merge 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-7403?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13815714#comment-13815714 ] stack commented on HBASE-7403: ------------------------------ [~asafm] yes > Online Merge > ------------ > > Key: HBASE-7403 > URL: https://issues.apache.org/jira/browse/HBASE-7403 > Project: HBase > Issue Type: New Feature > Affects Versions: 0.95.0 > Reporter: chunhui shen > Assignee: chunhui shen > Priority: Critical > Fix For: 0.98.0, 0.95.0 > > Attachments: 7403-trunkv5.patch, 7403-trunkv6.patch, 7403-v5.txt, 7403v5.diff, 7403v5.txt, hbase-7403-0.95.patch, hbase-7403-94v1.patch, hbase-7403-trunkv1.patch, hbase-7403-trunkv10.patch, hbase-7403-trunkv11.patch, hbase-7403-trunkv12.patch, hbase-7403-trunkv13.patch, hbase-7403-trunkv14.patch, hbase-7403-trunkv15.patch, hbase-7403-trunkv16.patch, hbase-7403-trunkv19.patch, hbase-7403-trunkv20.patch, hbase-7403-trunkv22.patch, hbase-7403-trunkv23.patch, hbase-7403-trunkv24.patch, hbase-7403-trunkv26.patch, hbase-7403-trunkv28.patch, hbase-7403-trunkv29.patch, hbase-7403-trunkv30.patch, hbase-7403-trunkv31.patch, hbase-7403-trunkv32.patch, hbase-7403-trunkv33.patch, hbase-7403-trunkv5.patch, hbase-7403-trunkv6.patch, hbase-7403-trunkv7.patch, hbase-7403-trunkv8.patch, hbase-7403-trunkv9.patch, merge region.pdf > > > Support executing region merge transaction on Regionserver, similar with split transaction > Process of merging two regions: > a.client sends RPC (dispatch merging regions) to master > b.master moves the regions together (on the same regionserver where the more heavily loaded region resided) > c.master sends RPC (merge regions) to this regionserver > d.Regionserver executes the region merge transaction in the thread pool > e.the above b,c,d run asynchronously > Process of region merge transaction: > a.Construct a new region merge transaction. > b.prepare for the merge transaction, the transaction will be canceled if it is unavailable, > e.g. two regions don't belong to same table; two regions are not adjacent in a non-compulsory merge; region is closed or has reference > c.execute the transaction as the following: > /** > * Set region as in transition, set it into MERGING state. > */ > SET_MERGING_IN_ZK, > /** > * We created the temporary merge data directory. > */ > CREATED_MERGE_DIR, > /** > * Closed the merging region A. > */ > CLOSED_REGION_A, > /** > * The merging region A has been taken out of the server's online regions list. > */ > OFFLINED_REGION_A, > /** > * Closed the merging region B. > */ > CLOSED_REGION_B, > /** > * The merging region B has been taken out of the server's online regions list. > */ > OFFLINED_REGION_B, > /** > * Started in on creation of the merged region. > */ > STARTED_MERGED_REGION_CREATION, > /** > * Point of no return. If we got here, then transaction is not recoverable > * other than by crashing out the regionserver. > */ > PONR > d.roll back if step c throws exception > Usage: > HBaseAdmin#mergeRegions > See more details from the patch -- This message was sent by Atlassian JIRA (v6.1#6144)