[jira] [Updated] (HBASE-20417) Do not read wal entries when peer is disabled
[ https://issues.apache.org/jira/browse/HBASE-20417?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Duo Zhang updated HBASE-20417: -- Resolution: Fixed Hadoop Flags: Reviewed Status: Resolved (was: Patch Available) Pushed to master and branch-2. Thanks [~zghaobac] for reviewing. > Do not read wal entries when peer is disabled > - > > Key: HBASE-20417 > URL: https://issues.apache.org/jira/browse/HBASE-20417 > Project: HBase > Issue Type: Sub-task > Components: Replication >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Major > Fix For: 3.0.0, 2.1.0 > > Attachments: HBASE-20417-v1.patch, HBASE-20417.patch > > > Now, the disabled check is in ReplicationSourceShipper. If peer is disabled, > then we will not take entry batch from ReplicationSourceWALReader. But > ReplicationSourceWALReader will keep reading wal entries until the buffer is > full. > For serial replication, the canPush check is in ReplicationSourceWALReader, > so even when we disabled the peer during the modification for a serial peer, > we could still run into the SerialReplicationChecker. Theoretically there > will be no problem, since in the procedure we will only update last pushed > sequence ids to a greater value. If canPush is true then a greater value does > not make any difference, if canPush is false then we are still safe since the > ReplicationSourceWALReader will be blocked. > But this still makes me a little nervous, and also, it does not make sense to > still read wal entries when the peer is disabled. So let's change the > behavior. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (HBASE-20417) Do not read wal entries when peer is disabled
[ https://issues.apache.org/jira/browse/HBASE-20417?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Duo Zhang updated HBASE-20417: -- Attachment: HBASE-20417-v1.patch > Do not read wal entries when peer is disabled > - > > Key: HBASE-20417 > URL: https://issues.apache.org/jira/browse/HBASE-20417 > Project: HBase > Issue Type: Sub-task > Components: Replication >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Major > Fix For: 3.0.0, 2.1.0 > > Attachments: HBASE-20417-v1.patch, HBASE-20417.patch > > > Now, the disabled check is in ReplicationSourceShipper. If peer is disabled, > then we will not take entry batch from ReplicationSourceWALReader. But > ReplicationSourceWALReader will keep reading wal entries until the buffer is > full. > For serial replication, the canPush check is in ReplicationSourceWALReader, > so even when we disabled the peer during the modification for a serial peer, > we could still run into the SerialReplicationChecker. Theoretically there > will be no problem, since in the procedure we will only update last pushed > sequence ids to a greater value. If canPush is true then a greater value does > not make any difference, if canPush is false then we are still safe since the > ReplicationSourceWALReader will be blocked. > But this still makes me a little nervous, and also, it does not make sense to > still read wal entries when the peer is disabled. So let's change the > behavior. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (HBASE-20417) Do not read wal entries when peer is disabled
[ https://issues.apache.org/jira/browse/HBASE-20417?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Duo Zhang updated HBASE-20417: -- Assignee: Duo Zhang Fix Version/s: 2.1.0 3.0.0 Status: Patch Available (was: Open) > Do not read wal entries when peer is disabled > - > > Key: HBASE-20417 > URL: https://issues.apache.org/jira/browse/HBASE-20417 > Project: HBase > Issue Type: Sub-task > Components: Replication >Reporter: Duo Zhang >Assignee: Duo Zhang >Priority: Major > Fix For: 3.0.0, 2.1.0 > > Attachments: HBASE-20417.patch > > > Now, the disabled check is in ReplicationSourceShipper. If peer is disabled, > then we will not take entry batch from ReplicationSourceWALReader. But > ReplicationSourceWALReader will keep reading wal entries until the buffer is > full. > For serial replication, the canPush check is in ReplicationSourceWALReader, > so even when we disabled the peer during the modification for a serial peer, > we could still run into the SerialReplicationChecker. Theoretically there > will be no problem, since in the procedure we will only update last pushed > sequence ids to a greater value. If canPush is true then a greater value does > not make any difference, if canPush is false then we are still safe since the > ReplicationSourceWALReader will be blocked. > But this still makes me a little nervous, and also, it does not make sense to > still read wal entries when the peer is disabled. So let's change the > behavior. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (HBASE-20417) Do not read wal entries when peer is disabled
[ https://issues.apache.org/jira/browse/HBASE-20417?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Duo Zhang updated HBASE-20417: -- Attachment: HBASE-20417.patch > Do not read wal entries when peer is disabled > - > > Key: HBASE-20417 > URL: https://issues.apache.org/jira/browse/HBASE-20417 > Project: HBase > Issue Type: Sub-task > Components: Replication >Reporter: Duo Zhang >Priority: Major > Attachments: HBASE-20417.patch > > > Now, the disabled check is in ReplicationSourceShipper. If peer is disabled, > then we will not take entry batch from ReplicationSourceWALReader. But > ReplicationSourceWALReader will keep reading wal entries until the buffer is > full. > For serial replication, the canPush check is in ReplicationSourceWALReader, > so even when we disabled the peer during the modification for a serial peer, > we could still run into the SerialReplicationChecker. Theoretically there > will be no problem, since in the procedure we will only update last pushed > sequence ids to a greater value. If canPush is true then a greater value does > not make any difference, if canPush is false then we are still safe since the > ReplicationSourceWALReader will be blocked. > But this still makes me a little nervous, and also, it does not make sense to > still read wal entries when the peer is disabled. So let's change the > behavior. -- This message was sent by Atlassian JIRA (v7.6.3#76005)