[ https://issues.apache.org/jira/browse/HBASE-16576?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andrew Purtell updated HBASE-16576: ----------------------------------- Resolution: Fixed Hadoop Flags: Reviewed Fix Version/s: 0.98.23 1.4.0 2.0.0 Status: Resolved (was: Patch Available) > Shell add_peer doesn't allow setting cluster_key for custom endpoints > --------------------------------------------------------------------- > > Key: HBASE-16576 > URL: https://issues.apache.org/jira/browse/HBASE-16576 > Project: HBase > Issue Type: Bug > Components: shell > Affects Versions: 2.0.0, 1.1.5, 0.98.22 > Reporter: Geoffrey Jacoby > Assignee: Geoffrey Jacoby > Fix For: 2.0.0, 1.4.0, 0.98.23 > > Attachments: HBASE-16576-0.98.patch, HBASE-16576.patch, > HBASE-16576.v1.patch > > > The HBase shell allows a user to create a replication peer using the add_peer > method, which can take a peer id and a Ruby hash. It creates a > ReplicationPeerConfig and passes it through to the Java > ReplicationAdmin#addPeer. > The Ruby code makes an assumption that the Java API doesn't: that CLUSTER_KEY > and ENDPOINT_CLASSNAME are mutually exclusive. If both are specified, it > throws an error. If only ENDPOINT_CLASSNAME is set, the add_peer logic > derives a local dummy cluster key based on the local cluster's configuration. > CLUSTER_KEY shouldn't be required when an ENDPOINT_CLASSNAME is specified, > because a custom endpoint might not need it. The dummy default logic is fine. > > But if an endpoint does require a remote cluster key, it shouldn't be > forbidden to provide one, especially since the Java API permits it, and even > the custom replication endpoint Java tests rely on this. (See > TestReplicationEndpoint#testCustomReplicationEndpoint) > -- This message was sent by Atlassian JIRA (v6.3.4#6332)