activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Matthew Good (JIRA)" <>
Subject [jira] [Commented] (AMQNET-370) Channel was inactive for too long does not recover
Date Tue, 24 Apr 2012 22:50:06 GMT


Matthew Good commented on AMQNET-370:

This documents a case where a consumer quit receiving messages.

Events (UTC):
18:08:40 listener started
18:21:18 broker restarted and client listeners reconnected.
20:19:27 message arrived at broker.
20:20:24 connection reset error at broker
20:22:41 client service restarted - takes about a minute.
20:23:55 client received and processed message normally.

Client log attached.  Note that times are local which is 6 hours less than above times in
Server log attached.  Sections removed to save space.  Times in UTC.

The things to note:
1. No telling when the connection aborted.  The client never logged anything between when
it connected and when we restarted it.
2. Server didn't notice until a message was sent and it took a minute to figure out the client
wasn't listening.
3. client url is activemq:failover:tcp://someserver:61616.
4. queue involved is TPS.BATCH.REQUEST

> Channel was inactive for too long does not recover
> --------------------------------------------------
>                 Key: AMQNET-370
>                 URL:
>             Project: ActiveMQ .Net
>          Issue Type: Bug
>          Components: ActiveMQ
>    Affects Versions: 1.5.1, 1.5.3
>         Environment: Windows .NET
> Server is 5.4.2 on Windows server 2008.
>            Reporter: Matthew Good
>            Assignee: Jim Gomes
>         Attachments:, nms-inactivityexception.log
> I see many of these bugs about "Channel was inactive for too long" and they all get closed
as incomplete because no one can determine the cause.  So I won't ask for that.
> The biggest problem here isn't that this one call fails, it's that the client does not
recover or failover after this occurs so once this happens once, it continues for every request
until the client application is restarted.  In a production environment, we can't be restarting
services all the time.
> For services that are just listening, they stop receiving messages, no error is raised
so we don't even know that it is in a bad state.
> So please fix the failover to re-establish the connection(s) or whatever it must do so
that the next call works since that is the intention of the failover protocol.
> Apache.NMS.ActiveMQ.IOException: Channel was inactive for too long: tcp://
>    at Apache.NMS.ActiveMQ.Connection.Oneway(Command command)
>    at Apache.NMS.ActiveMQ.Session..ctor(Connection connection, SessionId sessionId, AcknowledgementMode
>    at Apache.NMS.ActiveMQ.Connection.CreateAtiveMQSession(AcknowledgementMode ackMode)
>    at Apache.NMS.ActiveMQ.Connection.CreateSession(AcknowledgementMode sessionAcknowledgementMode)

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:!default.jspa
For more information on JIRA, see:


View raw message