On Sat, 2012-04-07 at 13:01 -0600, Chris Robison wrote: 
> Sorry, that was really badly written. Is the .NET client library supposed
> to be able to reconnect itself with the ActiveMQ broker or is that
> something I have to catch and do myself?

in order to have the client handle connection errors you need to use the
failover transport just like in the java client. 

> 
> On Sat, Apr 7, 2012 at 1:00 PM, Chris Robison <chrisdrobi...@gmail.com>wrote:
> 
> > Is the .NET client library reconnect itself so is that something I have to
> > catch and do?
> >
> >
> > On Sat, Apr 7, 2012 at 12:37 PM, Chris Robison 
> > <chrisdrobi...@gmail.com>wrote:
> >
> >> I'm assuming you mean set it on the connection factory. I've tried that,
> >> but no go. The only way I've found to recover from this is to delete the
> >> KahaDB on the activemq server and restart all services.
> >>
> >>
> >> On Sat, Apr 7, 2012 at 11:59 AM, Timothy Bish <tabish...@gmail.com>wrote:
> >>
> >>> On Sat, 2012-04-07 at 11:56 -0600, Chris Robison wrote:
> >>> > I'm running into an interesting issue. I have a client connecting to an
> >>> > activemq server, trying to consume messages and reply to a temporary
> >>> > destination set. The ActiveMQ server debug is showing the following:
> >>> >
> >>> > 2012-04-07 13:20:25,708 | DEBUG | Received WireFormat: WireFormatInfo {
> >>> > version=6, properties={CacheSize=0, CacheEnabled=false,
> >>> > MaxInactivityDurationInitialDelay=10000, SizePrefixDisabled=false,
> >>> > TcpNoDelayEnabled=true, MaxInactivityDuration=30000,
> >>> > TightEncodingEnabled=false, StackTraceEnabled=false},
> >>> > magic=[A,c,t,i,v,e,M,Q]} |
> >>> > org.apache.activemq.transport.WireFormatNegotiator | ActiveMQ
> >>> Transport:
> >>> > ssl:///172.17.5.16:52657
> >>> > 2012-04-07 13:20:25,708 | DEBUG | ssl:///172.17.5.16:52657 before
> >>> > negotiation: OpenWireFormat{version=9, cacheEnabled=false,
> >>> > stackTraceEnabled=false, tightEncodingEnabled=false,
> >>> > sizePrefixDisabled=false, maxFrameSize=104857600} |
> >>> > org.apache.activemq.transport.WireFormatNegotiator | ActiveMQ
> >>> Transport:
> >>> > ssl:///172.17.5.16:52657
> >>> > 2012-04-07 13:20:25,709 | DEBUG | ssl:///172.17.5.16:52657 after
> >>> > negotiation: OpenWireFormat{version=6, cacheEnabled=false,
> >>> > stackTraceEnabled=false, tightEncodingEnabled=false,
> >>> > sizePrefixDisabled=false, maxFrameSize=104857600} |
> >>> > org.apache.activemq.transport.WireFormatNegotiator | ActiveMQ
> >>> Transport:
> >>> > ssl:///172.17.5.16:52657
> >>> > 2012-04-07 13:20:25,725 | DEBUG | Setting up new connection id:
> >>> > ID:WIIPAP101-52658-634694015719174302-1:0, address: tcp://
> >>> 172.17.5.16:52657,
> >>> > info: ConnectionInfo {commandId = 1, responseRequired = true,
> >>> connectionId
> >>> > = ID:WIIPAP101-52658-634694015719174302-1:0, clientId =
> >>> > ID:WIIPAP101-52658-634694015719174302-0:0, clientIp = null, userName =
> >>> > mqipauser, password = *****, brokerPath = null, brokerMasterConnector =
> >>> > false, manageable = false, clientMaster = false, faultTolerant = false,
> >>> > failoverReconnect = false} |
> >>> org.apache.activemq.broker.TransportConnection
> >>> > | ActiveMQ Transport: ssl:///172.17.5.16:52657
> >>> > 2012-04-07 13:20:25,727 | DEBUG | Create the LDAP initial context. |
> >>> > org.apache.activemq.jaas.LDAPLoginModule | ActiveMQ Transport: ssl:///
> >>> > 172.17.5.16:52657
> >>> > 2012-04-07 13:20:25,739 | DEBUG | Get the user DN. |
> >>> > org.apache.activemq.jaas.LDAPLoginModule | ActiveMQ Transport: ssl:///
> >>> > 172.17.5.16:52657
> >>> > 2012-04-07 13:20:25,739 | DEBUG | Looking for the user in LDAP with  |
> >>> > org.apache.activemq.jaas.LDAPLoginModule | ActiveMQ Transport: ssl:///
> >>> > 172.17.5.16:52657
> >>> > 2012-04-07 13:20:25,740 | DEBUG |   base DN:
> >>> > OU=Users,OU=ActiveMQ,DC=VOSH,DC=NET |
> >>> > org.apache.activemq.jaas.LDAPLoginModule | ActiveMQ Transport: ssl:///
> >>> > 172.17.5.16:52657
> >>> > 2012-04-07 13:20:25,740 | DEBUG |   filter: (sAMAccountName=mqipauser)
> >>> |
> >>> > org.apache.activemq.jaas.LDAPLoginModule | ActiveMQ Transport: ssl:///
> >>> > 172.17.5.16:52657
> >>> > 2012-04-07 13:20:25,743 | DEBUG | Binding the user. |
> >>> > org.apache.activemq.jaas.LDAPLoginModule | ActiveMQ Transport: ssl:///
> >>> > 172.17.5.16:52657
> >>> > 2012-04-07 13:20:25,750 | DEBUG | User CN=MQ IPA
> >>> > User,OU=Users,OU=ActiveMQ,DC=VOSH,DC=NET successfully bound. |
> >>> > org.apache.activemq.jaas.LDAPLoginModule | ActiveMQ Transport: ssl:///
> >>> > 172.17.5.16:52657
> >>> > 2012-04-07 13:20:25,751 | DEBUG | Get user roles. |
> >>> > org.apache.activemq.jaas.LDAPLoginModule | ActiveMQ Transport: ssl:///
> >>> > 172.17.5.16:52657
> >>> > 2012-04-07 13:20:25,751 | DEBUG | Looking for the user roles in LDAP
> >>> with
> >>> >  | org.apache.activemq.jaas.LDAPLoginModule | ActiveMQ Transport:
> >>> ssl:///
> >>> > 172.17.5.16:52657
> >>> > 2012-04-07 13:20:25,751 | DEBUG |   base DN:
> >>> > OU=Groups,OU=ActiveMQ,DC=VOSH,DC=NET |
> >>> > org.apache.activemq.jaas.LDAPLoginModule | ActiveMQ Transport: ssl:///
> >>> > 172.17.5.16:52657
> >>> > 2012-04-07 13:20:25,751 | DEBUG |   filter: (member=CN=MQ IPA
> >>> > User,OU=Users,OU=ActiveMQ,DC=VOSH,DC=NET) |
> >>> > org.apache.activemq.jaas.LDAPLoginModule | ActiveMQ Transport: ssl:///
> >>> > 172.17.5.16:52657
> >>> > 2012-04-07 13:20:25,762 | DEBUG | Roles [MQIPAUsers, MQUsers] for user
> >>> > mqipauser | org.apache.activemq.jaas.LDAPLoginModule | ActiveMQ
> >>> Transport:
> >>> > ssl:///172.17.5.16:52657
> >>> > 2012-04-07 13:20:25,789 | DEBUG | msipap101.vosh.net adding consumer:
> >>> > ID:WIIPAP101-52658-634694015719174302-1:0:1:1 for destination:
> >>> > queue://SolidCloud.Requests.Desktops.IPA |
> >>> > org.apache.activemq.broker.region.AbstractRegion | ActiveMQ Transport:
> >>> > ssl:///172.17.5.16:52657
> >>> > 2012-04-07 13:20:25,797 | DEBUG |
> >>> queue://SolidCloud.Requests.Desktops.IPA
> >>> > add sub: QueueSubscription:
> >>> > consumer=ID:WIIPAP101-52658-634694015719174302-1:0:1:1, destinations=0,
> >>> > dispatched=0, delivered=0, pending=0, dequeues: 1, dispatched: 1,
> >>> inflight:
> >>> > 0 | org.apache.activemq.broker.region.Queue | ActiveMQ Transport:
> >>> ssl:///
> >>> > 172.17.5.16:52657
> >>> > 2012-04-07 13:20:25,798 | DEBUG | SolidCloud.Requests.Desktops.IPA
> >>> > toPageIn: 0, Inflight: 0, pagedInMessages.size 9, enqueueCount: 3,
> >>> > dequeueCount: 1 | org.apache.activemq.broker.region.Queue |
> >>> > Queue:SolidCloud.Requests.Desktops.IPA
> >>> > 2012-04-07 13:20:25,810 | DEBUG | bridging (msipap101.vosh.net ->
> >>> > mstmip101.vosh.net) ID:MSIPAP101-36535-1333817412870-1:1:0:0:33,
> >>> consumer:
> >>> > ID:MSIPAP101-36535-1333817412870-2:2:1:1, destination
> >>> >
> >>> topic://ActiveMQ.Advisory.Consumer.Queue.SolidCloud.Requests.Desktops.IPA,
> >>> > brokerPath: [ID:MSIPAP101-36535-1333817412870-0:1], message:
> >>> > ActiveMQMessage {commandId = 0, responseRequired = false, messageId =
> >>> > ID:MSIPAP101-36535-1333817412870-1:1:0:0:33, originalDestination =
> >>> null,
> >>> > originalTransactionId = null, producerId =
> >>> > ID:MSIPAP101-36535-1333817412870-2:1:1:1, destination =
> >>> >
> >>> topic://ActiveMQ.Advisory.Consumer.Queue.SolidCloud.Requests.Desktops.IPA,
> >>> > transactionId = null, expiration = 0, timestamp = 0, arrival = 0,
> >>> > brokerInTime = 1333819225809, brokerOutTime = 1333819225810,
> >>> correlationId
> >>> > = null, replyTo = null, persistent = false, type = Advisory, priority
> >>> = 0,
> >>> > groupID = null, groupSequence = 0, targetConsumerId = null, compressed
> >>> =
> >>> > false, userID = null, content = null, marshalledProperties = null,
> >>> > dataStructure = ConsumerInfo {commandId = 3, responseRequired = true,
> >>> > consumerId = ID:WIIPAP101-52658-634694015719174302-1:0:1:1,
> >>> destination =
> >>> > queue://SolidCloud.Requests.Desktops.IPA, prefetchSize = 1000,
> >>> > maximumPendingMessageLimit = 0, browser = false, dispatchAsync = true,
> >>> > selector = null, subscriptionName = null, noLocal = false, exclusive =
> >>> > false, retroactive = false, priority = 0, brokerPath = null,
> >>> > optimizedAcknowledge = false, noRangeAcks = false, additionalPredicate
> >>> =
> >>> > null}, redeliveryCounter = 0, size = 1024, properties =
> >>> {consumerCount=2,
> >>> > originBrokerURL=ssl://MSIPAP101:61616,
> >>> > originBrokerId=ID:MSIPAP101-36535-1333817412870-0:1, originBrokerName=
> >>> > msipap101.vosh.net}, readOnlyProperties = false, readOnlyBody = false,
> >>> > droppable = false} |
> >>> > org.apache.activemq.network.DemandForwardingBridgeSupport | ActiveMQ
> >>> > Connection Dispatcher: vm://msipap101.vosh.net#0
> >>> > 2012-04-07 13:20:26,912 | DEBUG | Error occured while processing sync
> >>> > command: ActiveMQTextMessage {commandId = 5, responseRequired = true,
> >>> > messageId = ID:WIIPAP101-52658-634694015719174302-1:0:1:1:1,
> >>> > originalDestination = null, originalTransactionId = null, producerId =
> >>> > ID:WIIPAP101-52658-634694015719174302-1:0:1:1, destination =
> >>> > temp-queue://ID:POTMIP102-60127-634693656236343522-1:38:1,
> >>> transactionId =
> >>> > null, expiration = 0, timestamp = 1333819173524, arrival = 0,
> >>> brokerInTime
> >>> > = 1333819226907, brokerOutTime = 0, correlationId = null, replyTo =
> >>> null,
> >>> > persistent = true, type = null, priority = 4, groupID = null,
> >>> groupSequence
> >>> > = 0, targetConsumerId = null, compressed = false, userID = null,
> >>> content =
> >>> > null, marshalledProperties = null, dataStructure = null,
> >>> redeliveryCounter
> >>> > = 0, size = 0, properties = null, readOnlyProperties = false,
> >>> readOnlyBody
> >>> > = false, droppable = false, text = []}, exception:
> >>> javax.jms.JMSException:
> >>> > The destination
> >>> temp-queue://ID:POTMIP102-60127-634693656236343522-1:38:1
> >>> > does not exist. |
> >>> org.apache.activemq.broker.TransportConnection.Service |
> >>> > ActiveMQ Transport: ssl:///172.17.5.16:52657
> >>> > javax.jms.JMSException: The destination
> >>> > temp-queue://ID:POTMIP102-60127-634693656236343522-1:38:1 does not
> >>> exist.
> >>> > at
> >>> >
> >>> org.apache.activemq.broker.region.AbstractRegion.addDestination(AbstractRegion.java:149)
> >>> > at
> >>> >
> >>> org.apache.activemq.broker.region.RegionBroker.addDestination(RegionBroker.java:314)
> >>> > at
> >>> >
> >>> org.apache.activemq.broker.BrokerFilter.addDestination(BrokerFilter.java:145)
> >>> > at
> >>> >
> >>> org.apache.activemq.advisory.AdvisoryBroker.addDestination(AdvisoryBroker.java:161)
> >>> > at
> >>> >
> >>> org.apache.activemq.broker.BrokerFilter.addDestination(BrokerFilter.java:145)
> >>> > at
> >>> >
> >>> org.apache.activemq.broker.BrokerFilter.addDestination(BrokerFilter.java:145)
> >>> > at
> >>> >
> >>> org.apache.activemq.broker.BrokerFilter.addDestination(BrokerFilter.java:145)
> >>> > at
> >>> >
> >>> org.apache.activemq.broker.BrokerFilter.addDestination(BrokerFilter.java:145)
> >>> > at
> >>> >
> >>> org.apache.activemq.security.AuthorizationBroker.addDestination(AuthorizationBroker.java:81)
> >>> > at
> >>> >
> >>> org.apache.activemq.broker.MutableBrokerFilter.addDestination(MutableBrokerFilter.java:151)
> >>> > at
> >>> >
> >>> org.apache.activemq.broker.region.RegionBroker.send(RegionBroker.java:506)
> >>> > at
> >>> >
> >>> org.apache.activemq.broker.jmx.ManagedRegionBroker.send(ManagedRegionBroker.java:305)
> >>> > at org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:129)
> >>> > at
> >>> >
> >>> org.apache.activemq.broker.CompositeDestinationBroker.send(CompositeDestinationBroker.java:96)
> >>> > at
> >>> >
> >>> org.apache.activemq.broker.TransactionBroker.send(TransactionBroker.java:306)
> >>> > at org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:129)
> >>> > at org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:129)
> >>> > at
> >>> >
> >>> org.apache.activemq.security.AuthorizationBroker.send(AuthorizationBroker.java:192)
> >>> > at
> >>> >
> >>> org.apache.activemq.broker.MutableBrokerFilter.send(MutableBrokerFilter.java:135)
> >>> > at
> >>> >
> >>> org.apache.activemq.broker.TransportConnection.processMessage(TransportConnection.java:452)
> >>> > at
> >>> >
> >>> org.apache.activemq.command.ActiveMQMessage.visit(ActiveMQMessage.java:681)
> >>> > at
> >>> >
> >>> org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:291)
> >>> > at
> >>> >
> >>> org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:149)
> >>> > at
> >>> >
> >>> org.apache.activemq.transport.MutexTransport.onCommand(MutexTransport.java:50)
> >>> > at
> >>> >
> >>> org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:113)
> >>> > at
> >>> >
> >>> org.apache.activemq.transport.AbstractInactivityMonitor.onCommand(AbstractInactivityMonitor.java:229)
> >>> > at
> >>> >
> >>> org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:83)
> >>> > at
> >>> >
> >>> org.apache.activemq.transport.tcp.SslTransport.doConsume(SslTransport.java:91)
> >>> > at
> >>> >
> >>> org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:222)
> >>> > at
> >>> org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:204)
> >>> > at java.lang.Thread.run(Thread.java:679)
> >>> > 2012-04-07 13:20:26,943 | DEBUG | Transport Connection to: tcp://
> >>> > 172.17.5.16:52657 failed: java.io.EOFException |
> >>> > org.apache.activemq.broker.TransportConnection.Transport | ActiveMQ
> >>> > Transport: ssl:///172.17.5.16:52657
> >>> > java.io.EOFException
> >>> > at java.io.DataInputStream.readInt(DataInputStream.java:392)
> >>> > at
> >>> >
> >>> org.apache.activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:275)
> >>> > at
> >>> >
> >>> org.apache.activemq.transport.tcp.TcpTransport.readCommand(TcpTransport.java:229)
> >>> > at
> >>> >
> >>> org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:221)
> >>> > at
> >>> org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:204)
> >>> > at java.lang.Thread.run(Thread.java:679)
> >>> > 2012-04-07 13:20:26,947 | DEBUG | Stopping connection: tcp://
> >>> > 172.17.5.16:52657 | org.apache.activemq.broker.TransportConnection |
> >>> > StopAsync:tcp://172.17.5.16:52657-14
> >>> > 2012-04-07 13:20:26,948 | DEBUG | Stopping transport ssl:///
> >>> > 172.17.5.16:52657 | org.apache.activemq.transport.tcp.TcpTransport |
> >>> > StopAsync:tcp://172.17.5.16:52657-14
> >>> > 2012-04-07 13:20:26,949 | DEBUG | Stopped transport:
> >>> > tcp://172.17.5.16:52657|
> >>> > org.apache.activemq.broker.TransportConnection |
> >>> > StopAsync:tcp://172.17.5.16:52657-14
> >>> > 2012-04-07 13:20:26,950 | DEBUG | Cleaning up connection resources:
> >>> tcp://
> >>> > 172.17.5.16:52657 | org.apache.activemq.broker.TransportConnection |
> >>> > StopAsync:tcp://172.17.5.16:52657-14
> >>> > 2012-04-07 13:20:26,950 | DEBUG | remove connection id:
> >>> > ID:WIIPAP101-52658-634694015719174302-1:0 |
> >>> > org.apache.activemq.broker.TransportConnection |
> >>> > StopAsync:tcp://172.17.5.16:52657-14
> >>> > 2012-04-07 13:20:26,951 | DEBUG | msipap101.vosh.net removing
> >>> consumer:
> >>> > ID:WIIPAP101-52658-634694015719174302-1:0:1:1 for destination:
> >>> > queue://SolidCloud.Requests.Desktops.IPA |
> >>> > org.apache.activemq.broker.region.AbstractRegion |
> >>> > StopAsync:tcp://172.17.5.16:52657-14
> >>> >
> >>> > For some reason the client is being disconnected. The log on the
> >>> client is
> >>> > showing the following:
> >>> >
> >>> > 2012-04-07
> >>> > 13:06:22.0000|ERROR|VOAuto.Services.Citrix.RequestInvoker|Channel was
> >>> > inactive for too long:
> >>> > ssl://
> >>> msipap101.vosh.net:61616/EXCEPTIONOCCURRED:Apache.NMS.ActiveMQ.IOException
> >>> > Channel was inactive for too long:
> >>> > ssl://msipap101.vosh.net:61616/ Apache.NMS.ActiveMQ.Commands.Response
> >>> > SyncRequest(Apache.NMS.ActiveMQ.Commands.Command, System.TimeSpan)
> >>>  at
> >>> > Apache.NMS.ActiveMQ.Connection.SyncRequest(Command command, TimeSpan
> >>> > requestTimeout) in
> >>> c:\dev\NMS.ActiveMQ\src\main\csharp\Connection.cs:line
> >>> > 667
> >>> >    at Apache.NMS.ActiveMQ.Session.DoSend(ActiveMQDestination
> >>> destination,
> >>> > ActiveMQMessage message, MessageProducer producer, MemoryUsage
> >>> > producerWindow, TimeSpan sendTimeout) in
> >>> > c:\dev\NMS.ActiveMQ\src\main\csharp\Session.cs:line 716
> >>> >    at Apache.NMS.ActiveMQ.MessageProducer.Send(IDestination
> >>> destination,
> >>> > IMessage message, MsgDeliveryMode deliveryMode, MsgPriority priority,
> >>> > TimeSpan timeToLive, Boolean specifiedTimeToLive) in
> >>> > c:\dev\NMS.ActiveMQ\src\main\csharp\MessageProducer.cs:line 258
> >>> >    at Apache.NMS.ActiveMQ.MessageProducer.Send(IDestination
> >>> destination,
> >>> > IMessage message) in
> >>> > c:\dev\NMS.ActiveMQ\src\main\csharp\MessageProducer.cs:line 170
> >>> >    at
> >>> >
> >>> VirtualOffice.Automation.Messaging.Impl.ActiveMqMessagingProvider.<>c__DisplayClassd.<RegisterRequestReceiver>b__c(IMessage
> >>> > message)
> >>> >
> >>> > I'm sort of at a loss because the client is being disconnected and is
> >>> not
> >>> > reconnecting. Any suggestions?
> >>> >
> >>> > Chris
> >>>
> >>> Try turning off watchTopicAdvisories for the connection, there is a bug
> >>> in v 1.5.3 related to this.
> >>>
> >>> --
> >>> Tim Bish
> >>> Sr Software Engineer | FuseSource Corp
> >>> tim.b...@fusesource.com | www.fusesource.com
> >>> skype: tabish121 | twitter: @tabish121
> >>> blog: http://timbish.blogspot.com/
> >>>
> >>>
> >>
> >

-- 
Tim Bish
Sr Software Engineer | FuseSource Corp
tim.b...@fusesource.com | www.fusesource.com
skype: tabish121 | twitter: @tabish121
blog: http://timbish.blogspot.com/

Reply via email to