wchevreuil commented on a change in pull request #2197:
URL: https://github.com/apache/hbase/pull/2197#discussion_r465602315



##########
File path: 
hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceWALReaderThread.java
##########
@@ -132,6 +135,10 @@ public void run() {
       try (WALEntryStream entryStream =
           new WALEntryStream(logQueue, fs, conf, lastReadPosition, metrics)) {
         while (isReaderRunning()) { // loop here to keep reusing stream while 
we can
+          if (!source.isPeerEnabled()) {

Review comment:
       Yeah and the accumulation of batches can lead to major problems, because 
it's been accounted on overall buffer usage by ReplicationSourceManager. If 
buffer usage reaches the quota limits, replication becomes stuck. And since we 
check the buffer usage at ReplicationSourceManager, that means a single buffer 
for all peers. If one peer is disabled, while other source peers were supposed 
to continue to get replicated edits, those source would also be stuck because 
of this, until an RS restart.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to