diff options
Diffstat (limited to 'java/client/src/main/java/org/apache/qpid/client/handler/ChannelCloseMethodHandler.java')
-rw-r--r-- | java/client/src/main/java/org/apache/qpid/client/handler/ChannelCloseMethodHandler.java | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/java/client/src/main/java/org/apache/qpid/client/handler/ChannelCloseMethodHandler.java b/java/client/src/main/java/org/apache/qpid/client/handler/ChannelCloseMethodHandler.java index 8c8814e9b7..a580a6466d 100644 --- a/java/client/src/main/java/org/apache/qpid/client/handler/ChannelCloseMethodHandler.java +++ b/java/client/src/main/java/org/apache/qpid/client/handler/ChannelCloseMethodHandler.java @@ -104,6 +104,11 @@ public class ChannelCloseMethodHandler implements StateAwareMethodListener<Chann } // fixme why is this only done when the close is expected... // should the above forced closes not also cause a close? + // ---------- + // Closing the session only when it is expected allows the errors to be processed + // Calling this here will prevent failover. So we should do this for all exceptions + // that should never cause failover. Such as authentication errors. + session.channelClosed(channelId, errorCode, String.valueOf(reason)); } } |