[ https://issues.apache.org/jira/browse/HBASE-2195?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13099129#comment-13099129 ]
jirapos...@reviews.apache.org commented on HBASE-2195: ------------------------------------------------------ bq. On 2011-09-07 03:59:28, Ted Yu wrote: bq. > Slight optimization outside the scope of this JIRA: bq. > I think the index for the loop in ReplicationSource.removeNonReplicableEdits() bq. > for (int i = 0; i < edit.size(); i++) { bq. > should start from end of kvs and decrement. Because of the remove(i) from the ArrayList... Good point. I'll fine another jira, unless you want to. - Lars ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/1730/#review1777 ----------------------------------------------------------- On 2011-09-06 23:16:48, Lars Hofhansl wrote: bq. bq. ----------------------------------------------------------- bq. This is an automatically generated e-mail. To reply, visit: bq. https://reviews.apache.org/r/1730/ bq. ----------------------------------------------------------- bq. bq. (Updated 2011-09-06 23:16:48) bq. bq. bq. Review request for hbase, Ted Yu, Michael Stack, and Jean-Daniel Cryans. bq. bq. bq. Summary bq. ------- bq. bq. For Master <-> Master replication (as well as cycles > 2) a replication sink needs to keep track who is was the originator of a change and bq. (1) do not replicate this data back to the originator and bq. (2) pass that information on to the next link in a cycle > 2 bq. bq. In order to do that, HlogKeys read from the WAL are tagged with the Cluster UUID at the ReplicationSource before the logs are shipped to the Sink. The sink writes the Cluster UUID into the WAL log (in HlogKey, so only once per edit). If the sink is also source for yet another sink the ClusterUUID is retained in the HLogKeys read from the local WAL and passed on to the sink. bq. bq. bq. This addresses bug HBASE-2195. bq. https://issues.apache.org/jira/browse/HBASE-2195 bq. bq. bq. Diffs bq. ----- bq. bq. http://svn.apache.org/repos/asf/hbase/trunk/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSink.java 1165864 bq. http://svn.apache.org/repos/asf/hbase/trunk/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.java 1165864 bq. http://svn.apache.org/repos/asf/hbase/trunk/src/main/java/org/apache/hadoop/hbase/HConstants.java 1165864 bq. http://svn.apache.org/repos/asf/hbase/trunk/src/main/java/org/apache/hadoop/hbase/client/Delete.java 1165864 bq. http://svn.apache.org/repos/asf/hbase/trunk/src/main/java/org/apache/hadoop/hbase/client/Put.java 1165864 bq. http://svn.apache.org/repos/asf/hbase/trunk/src/main/java/org/apache/hadoop/hbase/client/replication/ReplicationAdmin.java 1165864 bq. http://svn.apache.org/repos/asf/hbase/trunk/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java 1165864 bq. http://svn.apache.org/repos/asf/hbase/trunk/src/main/java/org/apache/hadoop/hbase/regionserver/wal/HLog.java 1165864 bq. http://svn.apache.org/repos/asf/hbase/trunk/src/main/java/org/apache/hadoop/hbase/regionserver/wal/HLogKey.java 1165864 bq. http://svn.apache.org/repos/asf/hbase/trunk/src/main/java/org/apache/hadoop/hbase/replication/ReplicationZookeeper.java 1165864 bq. http://svn.apache.org/repos/asf/hbase/trunk/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java 1165864 bq. http://svn.apache.org/repos/asf/hbase/trunk/src/test/java/org/apache/hadoop/hbase/replication/TestMasterReplication.java PRE-CREATION bq. bq. Diff: https://reviews.apache.org/r/1730/diff bq. bq. bq. Testing bq. ------- bq. bq. All tests pass. bq. New test: TestMasterReplication (which tests Master <-> Master, but no cycles > 2, yet), also passes. bq. Manually tested a cycle between 3 clusters. bq. bq. bq. Thanks, bq. bq. Lars bq. bq. > Support cyclic replication > -------------------------- > > Key: HBASE-2195 > URL: https://issues.apache.org/jira/browse/HBASE-2195 > Project: HBase > Issue Type: Sub-task > Components: replication > Reporter: Jean-Daniel Cryans > Assignee: Lars Hofhansl > Attachments: 2195-v5.txt, 2195-v6.txt, 2195.txt > > > We need to support cyclic replication by using the cluster id of each HlogKey > and stop replicating when it goes back to the original cluster. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira