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

Demai Ni commented on HBASE-8663:
---------------------------------

folks, many thanks for the help on this JIRA. per our discussion, I created a 
follow up jira HBASE-9220 for the replicated tables on slave side, well, the 
tricky one. 
                
> a HBase Shell command to list the tables replicated from current cluster
> ------------------------------------------------------------------------
>
>                 Key: HBASE-8663
>                 URL: https://issues.apache.org/jira/browse/HBASE-8663
>             Project: HBase
>          Issue Type: New Feature
>          Components: Replication, shell
>         Environment: clusters setup as Master and Slave for replication of 
> tables 
>            Reporter: Demai Ni
>            Assignee: Demai Ni
>            Priority: Critical
>             Fix For: 0.98.0, 0.95.2, 0.94.11
>
>         Attachments: HBASE-8663-0.94.9-v0.patch, HBASE-8663.PATCH, 
> HBASE-8663-trunk-v0.patch, HBASE-8663-trunk-v1.patch, 
> HBASE-8663-trunk-v2.patch, HBASE-8663-trunk-v3.patch, 
> HBASE-8663-trunk-v4.patch, HBASE-8663-trunk-v5.patch, HBASE-8663-v2.PATCH
>
>
> Thanks for the discussion and very good suggestions,I'd reduce the scope of 
> this jira to only display the tables replicated from current cluster. Since 
> currently no good(accurate and consistent) way to flag a table on slave 
> cluster, this jira will not cover such scenario. Instead, the patch will be 
> flexible enough to adapt such scenario and a follow up JIRA will be opened to 
> address such situation. 
> The shell command and output will be like. Since all replication is 'global', 
> so no need to display the cluster name here. In the future, the command will 
> be extended for other scenarios, such as 1) replicated only to selected peers 
> or 2) indicate table:colfam on slave side
> {code: title=hbase shell command:list_replicated_tables |borderStyle=solid}
> hbase(main):001:0> list_replicated_tables
> TABLE:COLUMNFAMILY                           ReplicationType                  
>                                                          
>  t1_dn:cf1                                   GLOBAL                           
>                                                          
>  t2_dn:cf2                                   GLOBAL                           
>                                                          
>  usertable:family                            GLOBAL                           
>                                                          
> 3 row(s) in 0.4110 seconds
> hbase(main):003:0> list_replicated_tables "dn"
> TABLE:COLUMNFAMILY                           ReplicationType                  
>                                                          
>  t1_dn:cf1                                   GLOBAL                           
>                                                          
>  t2_dn:cf2                                   GLOBAL                           
>                                                          
> 2 row(s) in 0.0280 seconds
> {code} 
> -------------- The original JIRA description, keep as the history of 
> discussion  ---------------
> This jira is to provide a hbase shell command which can give user can 
> overview of the tables/columnfamilies currently being replicated. The 
> information will help system administrator for design and planning, and also 
> help application programmer to know which tables/columns should be 
> watchout(for example, not to modify a replicated columnfamily on the slave 
> cluster)
> Currently there is no easy way to tell which table(s)/columnfamily(ies) 
> replicated from or to a particular cluster. 
>       
> On Master Cluster, an indirect method can be used by combining two steps: 1) 
> $describe 'usertable'  and 2)  $list_peers to map the REPLICATION_SCOPE to 
> target(aka slave) cluster   
>       
> On slave cluster, this is no existing API/methods to list all the tables 
> replicated to this cluster.    
> Here is an example, and prototype for Master cluster
> {code: title=hbase shell command:list_replicated_tables |borderStyle=solid}
> hbase(main):001:0> list_replicated_tables
>  TABLE      COLUMNFAMILY       TARGET_CLUSTER
>  scores      course            hdtest017.svl.ibm.com:2181:/hbase
>  t3_dn       cf1               hdtest017.svl.ibm.com:2181:/hbase
>  usertable   family            hdtest017.svl.ibm.com:2181:/hbase
> 3 row(s) in 0.3380 seconds
> {code}
> -------------- end of original description 

--
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