mirror of https://github.com/apache/activemq.git
don't close the connection on a async error since we are not sure that it was connection failure. It may just have been a failed operation (security constrain or something).
git-svn-id: https://svn.apache.org/repos/asf/incubator/activemq/trunk@367409 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
b2f4fc6af9
commit
f2669a70a6
|
@ -83,8 +83,6 @@ public abstract class AbstractConnection implements Service, Connection, Task, C
|
|||
|
||||
private WireFormatInfo wireFormatInfo;
|
||||
protected boolean disposed=false;
|
||||
protected boolean shuttingDown=false;
|
||||
|
||||
|
||||
static class ConnectionState extends org.apache.activemq.state.ConnectionState {
|
||||
private final ConnectionContext context;
|
||||
|
@ -150,8 +148,6 @@ public abstract class AbstractConnection implements Service, Connection, Task, C
|
|||
} catch (Throwable ignore) {
|
||||
}
|
||||
}
|
||||
|
||||
shuttingDown=false;
|
||||
}
|
||||
|
||||
public void serviceTransportException(IOException e) {
|
||||
|
@ -165,17 +161,12 @@ public abstract class AbstractConnection implements Service, Connection, Task, C
|
|||
}
|
||||
|
||||
public void serviceException(Throwable e) {
|
||||
if( !disposed && !shuttingDown ) {
|
||||
shuttingDown=true;
|
||||
if( !disposed ) {
|
||||
if( log.isDebugEnabled() )
|
||||
log.debug("Async error occurred: "+e,e);
|
||||
ConnectionError ce = new ConnectionError();
|
||||
ce.setException(e);
|
||||
dispatchAsync(ce);
|
||||
try {
|
||||
stop();
|
||||
} catch (Exception ignore) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -245,7 +236,6 @@ public abstract class AbstractConnection implements Service, Connection, Task, C
|
|||
}
|
||||
|
||||
public Response processShutdown(ShutdownInfo info) throws Throwable {
|
||||
shuttingDown=true;
|
||||
stop();
|
||||
return null;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue