hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Bhupendra Kumar Jain (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-17460) enable_table_replication can not perform cyclic replication of a table
Date Mon, 13 Mar 2017 11:53:42 GMT

    [ https://issues.apache.org/jira/browse/HBASE-17460?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15907310#comment-15907310

Bhupendra Kumar Jain commented on HBASE-17460:

bq. Currently HBaseAdmin#isTableRepEnabled() returns false if ANY of the columns families
is not replicated, meaning that if you have a table with even one column family without replication
you could not disable replication.
I think , This is a bug and we should fix it.
bq. Admin#disableTableReplication() returns nothing and isTableRepEnabled() returns boolean.
For master branch, we can let isTableRepEnabled() return enum (partially disabled, disabled,
etc) This way, Admin#disableTableReplication() can return meaningful value to the user.
Agree. We can enhance this in master branch

> 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: replication
>             Fix For: 2.0.0, 1.4.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,
>   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

View raw message