You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Lars George (JIRA)" <ji...@apache.org> on 2017/02/11 14:00:44 UTC

[jira] [Created] (HBASE-17635) enable_table_replication script cannot handle replication scope

Lars George created HBASE-17635:
-----------------------------------

             Summary: enable_table_replication script cannot handle replication scope
                 Key: HBASE-17635
                 URL: https://issues.apache.org/jira/browse/HBASE-17635
             Project: HBase
          Issue Type: Bug
          Components: Replication
    Affects Versions: 1.3.1
            Reporter: Lars George


When you add a peer, then enable a table for replication using {{enable_table_replication}}, the script will create the table on the peer cluster, but with one difference:

_Master Cluster_:

{noformat}
hbase(main):027:0> describe 'testtable'
Table testtable is ENABLED                                                                                                                                                                                  
testtable                                                                                                                                                                                                   
COLUMN FAMILIES DESCRIPTION                                                                                                                                                                                 
{NAME => 'cf1', DATA_BLOCK_ENCODING => 'NONE', BLOOMFILTER => 'ROW', REPLICATION_SCOPE => '1', VERSIONS => '1', COMPRESSION => 'NONE', MIN_VERSIONS => '0', TTL => 'FOREVER', KEEP_DELETED_CELLS => 'FALSE',
 BLOCKSIZE => '65536', IN_MEMORY => 'false', BLOCKCACHE => 'true'}                                                                                                                                          
1 row(s) in 0.0700 seconds
{noformat}

_Peer Cluster_:
{noformat}
hbase(main):003:0> describe 'testtable'
Table testtable is ENABLED                                                                                                                                                                                  
testtable                                                                                                                                                                                                   
COLUMN FAMILIES DESCRIPTION                                                                                                                                                                                 
{NAME => 'cf1', DATA_BLOCK_ENCODING => 'NONE', BLOOMFILTER => 'ROW', REPLICATION_SCOPE => '0', COMPRESSION => 'NONE', VERSIONS => '1', TTL => 'FOREVER', MIN_VERSIONS => '0', KEEP_DELETED_CELLS => 'FALSE',
 BLOCKSIZE => '65536', IN_MEMORY => 'false', BLOCKCACHE => 'true'}                                                                                                                                          
1 row(s) in 0.1260 seconds
{noformat}

Note that the replication scope is different. Removing the peer, adding it again and enabling the table gives this now:

{noformat}
hbase(main):026:0> enable_table_replication 'testtable'

ERROR: Table testtable exists in peer cluster 1, but the table descriptors are not same when compared with source cluster. Thus can not enable the table's replication switch.
{noformat}

That is dumb, as it was the same script that enabled the replication scope in the first place. It should skip that particular attribute when comparing the cluster schemas.




--
This message was sent by Atlassian JIRA
(v6.3.15#6346)