activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Tom (Commented) (JIRA)" <jira+amq...@apache.org>
Subject [jira] [Commented] (AMQNET-370) Channel was inactive for too long does not recover
Date Tue, 10 Apr 2012 16:51:13 GMT

    [ https://issues.apache.org/jira/browse/AMQNET-370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13250805#comment-13250805
] 

Tom commented on AMQNET-370:
----------------------------

An example with Trace turned on. Apache.NMS.ActiveMq v1.5.3.

This was seen when running broker build apache-activemq-5.5.1-fuse-03-06 with 1 producer and
20 consumers, sending 2kb messages with the producer running flat out at ~1100msg/s.

The failover transport was used with two brokers specified, the first ("bl-svr62:61616") was
available and the second never available ("localhost:61617" below).

After stopping and starting the first broker a few times we see the error message below.

The consumer never recovers from this failover. The more we repeat this the more consumers
fail.  Interestingly when we tried this running the consumers on the same machine as the broker
using localhost we were unable to replicate the issue.

I can provide more log context if required and if the code used to generate this error would
be of use I can provide that too.

{code}17:07:51 DEBUG Attempting sync connect to: tcp://localhost:61617/?keepAlive=true&wireformat.maxInactivityDuration=0

17:07:51 DEBUG Opening socket to: localhost on port: 61617 
17:07:51 DEBUG Inflight MessageAck being dropped as stale. 
17:07:51 DEBUG Attempting sync connect to: tcp://localhost:61617/?keepAlive=true&wireformat.maxInactivityDuration=0

17:07:51 DEBUG Opening socket to: localhost on port: 61617 
17:07:51 DEBUG Attempting sync connect to: tcp://localhost:61617/?keepAlive=true&wireformat.maxInactivityDuration=0

17:07:51 DEBUG Opening socket to: localhost on port: 61617 
17:07:51 DEBUG ID:BLUE-00297-24875-634696743161508365-1:4:1:1 clearing dispatched list (0)
on transport interrupt 
17:07:51 DEBUG transportInterruptionProcessingComplete for: ID:BLUE-00297-24875-634696743161508365-1:4

17:07:51 ERROR Error during connection close: Apache.NMS.ActiveMQ.IOException: Channel was
inactive for too long: tcp://localhost:61616/?keepalive=true&wireformat.maxinactivityduration=0
   at Apache.NMS.ActiveMQ.Transport.InactivityMonitor.Oneway(Command command)
   at Apache.NMS.ActiveMQ.Transport.WireFormatNegotiator.Oneway(Command command)
   at Apache.NMS.ActiveMQ.Transport.TransportFilter.Oneway(Command command)
   at Apache.NMS.ActiveMQ.Transport.MutexTransport.Oneway(Command command)
   at Apache.NMS.ActiveMQ.Transport.ResponseCorrelator.Oneway(Command command)
   at Apache.NMS.ActiveMQ.Connection.Close() 
17:07:51 DEBUG Performing Async Clear of In Progress Messages on Consumer: ID:BLUE-00297-24875-634696743161508365-1:18:1:1

17:07:51 DEBUG ID:BLUE-00297-24875-634696743161508365-1:18:1:1 clearing dispatched list (0)
on transport interrupt 
17:07:51 DEBUG transportInterruptionProcessingComplete for: ID:BLUE-00297-24875-634696743161508365-1:18

17:07:52 DEBUG Performing Async Clear of In Progress Messages on Consumer: ID:BLUE-00297-24875-634696743161508365-1:20:1:1

17:07:52 DEBUG ID:BLUE-00297-24875-634696743161508365-1:20:1:1 clearing dispatched list (0)
on transport interrupt 
17:07:52 DEBUG transportInterruptionProcessingComplete for: ID:BLUE-00297-24875-634696743161508365-1:20

17:07:53 DEBUG Performing Async Clear of In Progress Messages on Consumer: ID:BLUE-00297-24875-634696743161508365-1:11:1:1

17:07:53 DEBUG ID:BLUE-00297-24875-634696743161508365-1:11:1:1 clearing dispatched list (0)
on transport interrupt 
17:07:53 DEBUG transportInterruptionProcessingComplete for: ID:BLUE-00297-24875-634696743161508365-1:11

17:07:53 DEBUG Connect fail to: tcp://localhost:61617/?keepAlive=true&wireformat.maxInactivityDuration=0,
reason: Error connecting to localhost:61617. 
17:07:53 DEBUG Attempting sync connect to: tcp://localhost:61616/?keepAlive=true&wireformat.maxInactivityDuration=0

17:07:53 DEBUG Opening socket to: localhost on port: 61616 
17:07:53 DEBUG Connect fail to: tcp://localhost:61617/?keepAlive=true&wireformat.maxInactivityDuration=0,
reason: Error connecting to localhost:61617.{code}
                
> Channel was inactive for too long does not recover
> --------------------------------------------------
>
>                 Key: AMQNET-370
>                 URL: https://issues.apache.org/jira/browse/AMQNET-370
>             Project: ActiveMQ .Net
>          Issue Type: Bug
>          Components: ActiveMQ
>    Affects Versions: 1.5.1
>         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://ipc-393-pstg-05.ipcommerce.com:61616/
>    at Apache.NMS.ActiveMQ.Connection.Oneway(Command command)
>    at Apache.NMS.ActiveMQ.Session..ctor(Connection connection, SessionId sessionId, AcknowledgementMode
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: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message