From e6e0eea777aef5e2025de559ccec7b06d9870bb0 Mon Sep 17 00:00:00 2001 From: Jean-Daniel Cryans Date: Wed, 15 Dec 2010 00:20:14 +0000 Subject: [PATCH] HBASE-3358 Recovered replication queue wait on themselves when terminating HBASE-3359 LogRoller not added as a WAL listener when replication is enabled git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1049360 13f79535-47bb-0310-9956-ffa450edef68 --- CHANGES.txt | 2 ++ .../org/apache/hadoop/hbase/regionserver/HRegionServer.java | 1 - .../hbase/replication/regionserver/ReplicationSource.java | 3 ++- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/CHANGES.txt b/CHANGES.txt index 458af10993b..7999377d429 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -777,6 +777,8 @@ Release 0.90.0 - Unreleased defaults to false HBASE-3355 Stopping a stopped cluster leaks an HMaster HBASE-3356 Add more checks in replication if RS is stopped + HBASE-3358 Recovered replication queue wait on themselves when terminating + HBASE-3359 LogRoller not added as a WAL listener when replication is enabled IMPROVEMENTS diff --git a/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java b/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java index 26b4c10a626..8248f5febfb 100644 --- a/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java +++ b/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java @@ -1103,7 +1103,6 @@ public class HRegionServer implements HRegionInterface, HBaseRPCErrorHandler, this.hlogRoller = new LogRoller(this, this); listeners.add(this.hlogRoller); if (this.replicationHandler != null) { - listeners = new ArrayList(); // Replication handler is an implementation of WALActionsListener. listeners.add(this.replicationHandler); } diff --git a/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.java b/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.java index 80cfddcffe3..1a041127aa4 100644 --- a/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.java +++ b/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.java @@ -605,7 +605,8 @@ public class ReplicationSource extends Thread return true; } else if (this.queueRecovered) { this.manager.closeRecoveredQueue(this); - this.terminate("Finished recovering the queue"); + LOG.info("Finished recovering the queue"); + this.running = false; return true; } return false;