ARTEMIS-350 Small improvement on the replication stop

This commit is contained in:
Clebert Suconic 2016-01-19 11:14:16 -05:00
parent b7f0d14b18
commit 68faa1d252
1 changed files with 9 additions and 7 deletions

View File

@ -263,14 +263,17 @@ public final class ReplicationManager implements ActiveMQComponent, ReadyListene
if (!started) {
return;
}
replicatingChannel.getConnection().getTransportConnection().fireReady(true);
latch.setCount(0);
enabled = false;
// This is to avoid the write holding a lock while we are trying to close it
if (replicatingChannel != null) {
replicatingChannel.close();
replicatingChannel.getConnection().getTransportConnection().fireReady(true);
latch.setCount(0);
}
synchronized (replicationLock) {
enabled = false;
if (replicatingChannel != null) {
replicatingChannel.close();
}
clearReplicationTokens();
}
@ -278,7 +281,6 @@ public final class ReplicationManager implements ActiveMQComponent, ReadyListene
if (toStop != null) {
toStop.removeFailureListener(failureListener);
}
remotingConnection = null;
started = false;
}