Duo Zhang created HBASE-20417:
---------------------------------
Summary: 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
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)