Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 71C53200C30 for ; Tue, 7 Mar 2017 17:00:45 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id 70593160B68; Tue, 7 Mar 2017 16:00:45 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id BBB85160B5F for ; Tue, 7 Mar 2017 17:00:44 +0100 (CET) Received: (qmail 36160 invoked by uid 500); 7 Mar 2017 16:00: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 36149 invoked by uid 99); 7 Mar 2017 16:00:43 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd4-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 07 Mar 2017 16:00:43 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd4-us-west.apache.org (ASF Mail Server at spamd4-us-west.apache.org) with ESMTP id 61CE0C1976 for ; Tue, 7 Mar 2017 16:00:43 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd4-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 1.451 X-Spam-Level: * X-Spam-Status: No, score=1.451 tagged_above=-999 required=6.31 tests=[KAM_ASCII_DIVIDERS=0.8, RP_MATCHES_RCVD=-0.001, SPF_NEUTRAL=0.652] autolearn=disabled Received: from mx1-lw-us.apache.org ([10.40.0.8]) by localhost (spamd4-us-west.apache.org [10.40.0.11]) (amavisd-new, port 10024) with ESMTP id 99O56bO1E3Ls for ; Tue, 7 Mar 2017 16:00:42 +0000 (UTC) Received: from mailrelay1-us-west.apache.org (mailrelay1-us-west.apache.org [209.188.14.139]) by mx1-lw-us.apache.org (ASF Mail Server at mx1-lw-us.apache.org) with ESMTP id 28B6E5F3BC for ; Tue, 7 Mar 2017 16:00:42 +0000 (UTC) Received: from jira-lw-us.apache.org (unknown [207.244.88.139]) by mailrelay1-us-west.apache.org (ASF Mail Server at mailrelay1-us-west.apache.org) with ESMTP id CBBB4E0A6C for ; Tue, 7 Mar 2017 16:00:40 +0000 (UTC) Received: from jira-lw-us.apache.org (localhost [127.0.0.1]) by jira-lw-us.apache.org (ASF Mail Server at jira-lw-us.apache.org) with ESMTP id 278632418A for ; Tue, 7 Mar 2017 16:00:40 +0000 (UTC) Date: Tue, 7 Mar 2017 16:00:40 +0000 (UTC) From: "Ted Yu (JIRA)" To: issues@hbase.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Updated] (HBASE-17460) enable_table_replication can not perform cyclic replication of a table MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 archived-at: Tue, 07 Mar 2017 16:00:45 -0000 [ https://issues.apache.org/jira/browse/HBASE-17460?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ted Yu updated HBASE-17460: --------------------------- Release Note: Fixing enable_table_replication for cyclic replication. Previously if the replication is enabled , user executes the enable table replication command again and If table descriptor matches, it will check the replication scope for each column family and if any of the column family scope is not enabled, it will enable it. Otherwise nothing is done and final result is success. was: Fixing enable_table_replication for cyclic replication. Previously if the replication is enabled , user executes the enable table replication command again and If table descriptor matches, it will check the replication scope for each column family and if any of the column family scope is not enabled, it will enable it. Otherwise nothing is done and final result is success. But as per the patch, it will throw exception if replication is already enabled for some column family. > enable_table_replication can not perform cyclic replication of a table > ---------------------------------------------------------------------- > > Key: HBASE-17460 > URL: https://issues.apache.org/jira/browse/HBASE-17460 > Project: HBase > Issue Type: Bug > Components: Replication > Reporter: NITIN VERMA > Assignee: NITIN VERMA > Labels: incompatibleChange, replication > Fix For: 2.0.0 > > Attachments: 17460-addendum.txt, 17460-addendum.v2.txt, 17460.branch-1.v3.txt, 17460.v5.txt, HBASE-17460-addendum2.patch, HBASE-17460-addendum2-v2.patch, HBASE-17460-addendum2-v3.patch, HBASE-17460-addendum2-v4.patch, HBASE-17460-branch-1-v5-addendumv2-addendum2v4.patch, HBASE-17460-branch-1-v5-addendumv2-addendum2v4-v2.patch, HBASE-17460-branch-1-v5-plusaddendum-v2.patch, HBASE-17460.patch, HBASE-17460_v2.patch, HBASE-17460_v3.patch, HBASE-17460_v4.patch > > Original Estimate: 96h > Remaining Estimate: 96h > > The enable_table_replication operation is broken for cyclic replication of HBase table as we compare all the properties of column families (including REPLICATION_SCOPE). > Below is exactly what happens: > 1. Running "enable_table_replication 'table1' " opeartion on first cluster will set the REPLICATION_SCOPE of all column families to peer id '1'. This will also create a table on second cluster where REPLICATION_SCOPE is still set to peer id '0'. > 2. Now when we run "enable_table_replication 'table1'" on second cluster, we compare all the properties of table (including REPLICATION_SCOPE_, which obviously is different now. > I am proposing a fix for this issue where we should avoid comparing REPLICATION_SCOPE inside HColumnDescriotor::compareTo() method, especially when replication is not already enabled on the desired table. > I have made that change and it is working. I will submit the patch soon. -- This message was sent by Atlassian JIRA (v6.3.15#6346)