You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Jean-Daniel Cryans (JIRA)" <ji...@apache.org> on 2010/07/07 23:38:51 UTC

[jira] Created: (HBASE-2822) Enable Master-Master replication

Enable Master-Master replication
--------------------------------

                 Key: HBASE-2822
                 URL: https://issues.apache.org/jira/browse/HBASE-2822
             Project: HBase
          Issue Type: Sub-task
            Reporter: Jean-Daniel Cryans
            Assignee: Jean-Daniel Cryans




-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (HBASE-2822) Enable Master-Master replication

Posted by "Jean-Daniel Cryans (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HBASE-2822?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jean-Daniel Cryans resolved HBASE-2822.
---------------------------------------

    Resolution: Duplicate

This was "fixed" in the scope of HBASE-3060 so that replication chains can be created, but HBASE-2195 is still an issue.

> Enable Master-Master replication
> --------------------------------
>
>                 Key: HBASE-2822
>                 URL: https://issues.apache.org/jira/browse/HBASE-2822
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: Jean-Daniel Cryans
>            Assignee: Jean-Daniel Cryans
>             Fix For: 0.92.0
>
>
> There's nothing inherently wrong in the replication design that prevents master-master, but it was disabled in the code in order to reduce the scope of HBASE-2223. Specifically, this code from Replication just needs a simple 2 lines modification to always instantiate ReplicationSink if this.replication is true:
> {code}
>   public void startReplicationServices() throws IOException {
>     if (this.replication) {
>       if (this.replicationMaster) {
>         this.replicationManager.init();
>       } else {
>         this.replicationSink =
>             new ReplicationSink(this.conf, this.stopRequested);
>       }
>     }
>   }
> {code}
> Enable and test.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (HBASE-2822) Enable Master-Master replication

Posted by "stack (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-2822?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12889420#action_12889420 ] 

stack commented on HBASE-2822:
------------------------------

This is going to be done in the 0.90.0 timeframe? Otherwise, lets move it out?

> Enable Master-Master replication
> --------------------------------
>
>                 Key: HBASE-2822
>                 URL: https://issues.apache.org/jira/browse/HBASE-2822
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: Jean-Daniel Cryans
>            Assignee: Jean-Daniel Cryans
>             Fix For: 0.90.0
>
>
> There's nothing inherently wrong in the replication design that prevents master-master, but it was disabled in the code in order to reduce the scope of HBASE-2223. Specifically, this code from Replication just needs a simple 2 lines modification to always instantiate ReplicationSink if this.replication is true:
> {code}
>   public void startReplicationServices() throws IOException {
>     if (this.replication) {
>       if (this.replicationMaster) {
>         this.replicationManager.init();
>       } else {
>         this.replicationSink =
>             new ReplicationSink(this.conf, this.stopRequested);
>       }
>     }
>   }
> {code}
> Enable and test.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HBASE-2822) Enable Master-Master replication

Posted by "Jean-Daniel Cryans (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HBASE-2822?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jean-Daniel Cryans updated HBASE-2822:
--------------------------------------

    Fix Version/s: 0.92.0
                       (was: 0.90.0)

Moving out to 0.92.0 for the moment.

> Enable Master-Master replication
> --------------------------------
>
>                 Key: HBASE-2822
>                 URL: https://issues.apache.org/jira/browse/HBASE-2822
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: Jean-Daniel Cryans
>            Assignee: Jean-Daniel Cryans
>             Fix For: 0.92.0
>
>
> There's nothing inherently wrong in the replication design that prevents master-master, but it was disabled in the code in order to reduce the scope of HBASE-2223. Specifically, this code from Replication just needs a simple 2 lines modification to always instantiate ReplicationSink if this.replication is true:
> {code}
>   public void startReplicationServices() throws IOException {
>     if (this.replication) {
>       if (this.replicationMaster) {
>         this.replicationManager.init();
>       } else {
>         this.replicationSink =
>             new ReplicationSink(this.conf, this.stopRequested);
>       }
>     }
>   }
> {code}
> Enable and test.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (HBASE-2822) Enable Master-Master replication

Posted by "stack (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-2822?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12905304#action_12905304 ] 

stack commented on HBASE-2822:
------------------------------

This going to be done for 0.90?  If not, can we move it out?

> Enable Master-Master replication
> --------------------------------
>
>                 Key: HBASE-2822
>                 URL: https://issues.apache.org/jira/browse/HBASE-2822
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: Jean-Daniel Cryans
>            Assignee: Jean-Daniel Cryans
>             Fix For: 0.90.0
>
>
> There's nothing inherently wrong in the replication design that prevents master-master, but it was disabled in the code in order to reduce the scope of HBASE-2223. Specifically, this code from Replication just needs a simple 2 lines modification to always instantiate ReplicationSink if this.replication is true:
> {code}
>   public void startReplicationServices() throws IOException {
>     if (this.replication) {
>       if (this.replicationMaster) {
>         this.replicationManager.init();
>       } else {
>         this.replicationSink =
>             new ReplicationSink(this.conf, this.stopRequested);
>       }
>     }
>   }
> {code}
> Enable and test.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (HBASE-2822) Enable Master-Master replication

Posted by "Jean-Daniel Cryans (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-2822?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12922750#action_12922750 ] 

Jean-Daniel Cryans commented on HBASE-2822:
-------------------------------------------

You got it right Jeff, so currently you can do master-master as long as tables that are scoped for replication on one cluster aren't on the other. Also now you can chain replication (the code I quoted in the description of this jira is what prevented you from doing it before). For example, here at SU we replicate from the web-serving prod to a "backup" cluster, which also contains some tables that are scoped for replication to a "dev" cluster that our front-end engineers use for obvious reasons.

> Enable Master-Master replication
> --------------------------------
>
>                 Key: HBASE-2822
>                 URL: https://issues.apache.org/jira/browse/HBASE-2822
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: Jean-Daniel Cryans
>            Assignee: Jean-Daniel Cryans
>             Fix For: 0.92.0
>
>
> There's nothing inherently wrong in the replication design that prevents master-master, but it was disabled in the code in order to reduce the scope of HBASE-2223. Specifically, this code from Replication just needs a simple 2 lines modification to always instantiate ReplicationSink if this.replication is true:
> {code}
>   public void startReplicationServices() throws IOException {
>     if (this.replication) {
>       if (this.replicationMaster) {
>         this.replicationManager.init();
>       } else {
>         this.replicationSink =
>             new ReplicationSink(this.conf, this.stopRequested);
>       }
>     }
>   }
> {code}
> Enable and test.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HBASE-2822) Enable Master-Master replication

Posted by "Jean-Daniel Cryans (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HBASE-2822?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jean-Daniel Cryans updated HBASE-2822:
--------------------------------------

    Fix Version/s: 0.21.0
      Description: 
There's nothing inherently wrong in the replication design that prevents master-master, but it was disabled in the code in order to reduce the scope of HBASE-2223. Specifically, this code from Replication just needs a simple 2 lines modification to always instantiate ReplicationSink if this.replication is true:

{code}
  public void startReplicationServices() throws IOException {
    if (this.replication) {
      if (this.replicationMaster) {
        this.replicationManager.init();
      } else {
        this.replicationSink =
            new ReplicationSink(this.conf, this.stopRequested);
      }
    }
  }
{code}

Enable and test.

> Enable Master-Master replication
> --------------------------------
>
>                 Key: HBASE-2822
>                 URL: https://issues.apache.org/jira/browse/HBASE-2822
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: Jean-Daniel Cryans
>            Assignee: Jean-Daniel Cryans
>             Fix For: 0.21.0
>
>
> There's nothing inherently wrong in the replication design that prevents master-master, but it was disabled in the code in order to reduce the scope of HBASE-2223. Specifically, this code from Replication just needs a simple 2 lines modification to always instantiate ReplicationSink if this.replication is true:
> {code}
>   public void startReplicationServices() throws IOException {
>     if (this.replication) {
>       if (this.replicationMaster) {
>         this.replicationManager.init();
>       } else {
>         this.replicationSink =
>             new ReplicationSink(this.conf, this.stopRequested);
>       }
>     }
>   }
> {code}
> Enable and test.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (HBASE-2822) Enable Master-Master replication

Posted by "Jeff Whiting (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-2822?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12922745#action_12922745 ] 

Jeff Whiting commented on HBASE-2822:
-------------------------------------

Sorry, I don't quite understand what you are saying JD.  So can you do Master-Master replication? It would seem that HBASE-2195 would prevent you from doing master-master replication as it would perpetuate the changes forever (because it wont stop replication when it goes back to the original cluster).  I might be missing something though...  

> Enable Master-Master replication
> --------------------------------
>
>                 Key: HBASE-2822
>                 URL: https://issues.apache.org/jira/browse/HBASE-2822
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: Jean-Daniel Cryans
>            Assignee: Jean-Daniel Cryans
>             Fix For: 0.92.0
>
>
> There's nothing inherently wrong in the replication design that prevents master-master, but it was disabled in the code in order to reduce the scope of HBASE-2223. Specifically, this code from Replication just needs a simple 2 lines modification to always instantiate ReplicationSink if this.replication is true:
> {code}
>   public void startReplicationServices() throws IOException {
>     if (this.replication) {
>       if (this.replicationMaster) {
>         this.replicationManager.init();
>       } else {
>         this.replicationSink =
>             new ReplicationSink(this.conf, this.stopRequested);
>       }
>     }
>   }
> {code}
> Enable and test.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.