hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Enis Soztutar (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-11386) Replication#table,CF config will be wrong if the table name includes namespace
Date Thu, 02 Apr 2015 23:52:53 GMT

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

Enis Soztutar commented on HBASE-11386:
---------------------------------------

See the master code: 
{code}
  hbase> add_peer '11', ENDPOINT_CLASSNAME => 'org.apache.hadoop.hbase.MyReplicationEndpoint',
    DATA => { "key1" => 1 }, CONFIG => { "config1" => "value1", "config2" =>
"value2" },
    TABLE_CFS => { "table1" => [], "table2" => ["cf1"], "table3" => ["cf1", "cf2"]
}
{code}
and ReplicationAdmin.java:
{code}
  public void addPeer(String id, ReplicationPeerConfig peerConfig,
      Map<TableName, ? extends Collection<String>> tableCfs) throws ReplicationException
{
    this.replicationPeers.addPeer(id, peerConfig, getTableCfsStr(tableCfs));
  }
{code}
We have already deprecated the APIs to not expose this to the users. We should fix HBASE-11393
which should resolve the ns issue. 

 



> Replication#table,CF config will be wrong if the table name includes namespace
> ------------------------------------------------------------------------------
>
>                 Key: HBASE-11386
>                 URL: https://issues.apache.org/jira/browse/HBASE-11386
>             Project: HBase
>          Issue Type: Bug
>          Components: Replication
>            Reporter: Qianxi Zhang
>            Assignee: Qianxi Zhang
>            Priority: Minor
>         Attachments: HBASE_11386_trunk_v1.patch, HBASE_11386_trunk_v2.patch
>
>
> Now we can config the table and CF in Replication, but I think the parse will be wrong
if the table name includes namespace
> ReplicationPeer#parseTableCFsFromConfig(line 125)
> {code}
> Map<String, List<String>> tableCFsMap = null;
>     // parse out (table, cf-list) pairs from tableCFsConfig
>     // format: "table1:cf1,cf2;table2:cfA,cfB"
>     String[] tables = tableCFsConfig.split(";");
>     for (String tab : tables) {
>       // 1 ignore empty table config
>       tab = tab.trim();
>       if (tab.length() == 0) {
>         continue;
>       }
>       // 2 split to "table" and "cf1,cf2"
>       //   for each table: "table:cf1,cf2" or "table"
>       String[] pair = tab.split(":");
>       String tabName = pair[0].trim();
>       if (pair.length > 2 || tabName.length() == 0) {
>         LOG.error("ignore invalid tableCFs setting: " + tab);
>         continue;
>       }
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message