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

Anoop Sam John commented on HBASE-8771:
---------------------------------------

The replication scope was taken as an int with a future possible improvement of 
setting to which peer it should be replicated.(Described by JD in some mailing 
chain). Do we really need to restrict it now? Any specific issue you are facing 
Demai?
                
> ensure replication_scope's value is either local(0) or global(1)
> ----------------------------------------------------------------
>
>                 Key: HBASE-8771
>                 URL: https://issues.apache.org/jira/browse/HBASE-8771
>             Project: HBase
>          Issue Type: Bug
>          Components: Replication
>    Affects Versions: 0.94.8
>            Reporter: Demai Ni
>            Priority: Minor
>             Fix For: 0.94.9
>
>         Attachments: HBASE-8771-0.94.8-v0.patch
>
>
> For replication_scope, only two values are meaningful:
> {code} 
>   public static final int REPLICATION_SCOPE_LOCAL = 0;
>   public static final int REPLICATION_SCOPE_GLOBAL = 1;
> {code} 
> However, there is no checking for that, so currently user can set it to any 
> integer value. And all non-zero value will be treated as 1(GLOBAL). 
> This jira is to add a checking in HColumnDescriptor#setScope() so that only 0 
> and 1 will be accept during create_table or alter_table. 
> In the future, we can leverage replication_scope to store for info. For 
> example: 
> -1: A columnfam is replicated from another cluster in MASTER_SLAVE setup (i.e 
> readonly)
> 2 : A columnfam is set MASTER_MASTER
> Probably a major improve JIRA is needed for the future usage. It will be good 
> to ensure the scope value at this moment. 
> {code:title=Testing|borderStyle=solid}
> hbase(main):002:0> create 't1_dn',{NAME=>'cf1',REPLICATION_SCOPE=>2}
> ERROR: java.lang.IllegalArgumentException: Replication Scope must be either 
> 0(local) or 1(global)
> ...
> hbase(main):004:0> alter 't1_dn',{NAME=>'cf1',REPLICATION_SCOPE=>-1}
> ERROR: java.lang.IllegalArgumentException: Replication Scope must be either 
> 0(local) or 1(global)
> ...
> {code} 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to