dcsimg
Incorrect router status returned from CLI
1 posts in topic
Flat View  Flat View
TOPIC ACTIONS:
 

Posted By:   Feng_Li
Posted On:   Monday, April 25, 2005 10:26 PM

My program is using CLI API to poll routers for some information. After getting the following Exception, the CLI method getAvailableRouters() returns incorrect status for available routers, i.e. a router is not in the available list, but it is actually available (output from executing command SWIFTMQ_HOME/scripts/unix/cli). Got any idea why? Thanks for any comments! BTW, it happens after the other router in the same host stops then starts. Also, if the affected router is rebooted, it will appear in the available list again. com.swiftmq.tools.requestreply.TimeoutException: [ProtocolRequest [Request, dispatchId=0 requestNumber=0 correlationId=0    More>>


My program is using CLI API to poll routers for some information. After
getting the following Exception, the CLI method getAvailableRouters()
returns incorrect status for available routers, i.e. a router is not in
the available list, but it is actually available (output from executing
command SWIFTMQ_HOME/scripts/unix/cli). Got any idea why? Thanks for any
comments!




BTW, it happens after the other router in the same host stops then starts.
Also, if the affected router is rebooted, it will appear in the available
list again.



			
com.swiftmq.tools.requestreply.TimeoutException: [ProtocolRequest [Request, dispatchId=0 requestNumber=0 correlationId=0 timeout=-1 replyRequ
ired=true reply=null], version=400]: Request timeout (30000 ms)!
at com.swiftmq.tools.requestreply.RequestRegistry.request(Unknown Source)
at com.swiftmq.admin.mgmt.Endpoint.request(Unknown Source)
at com.swiftmq.admin.cli.CLI.createEndpoint(Unknown Source)
at com.swiftmq.admin.cli.CLI.access$100(Unknown Source)
at com.swiftmq.admin.cli.CLI$RequestProcessor.visit(Unknown Source)
at com.swiftmq.mgmt.protocol.v400.RouterAvailableRequest.accept(Unknown Source)
at com.swiftmq.admin.cli.CLI$RequestProcessor.serviceRequest(Unknown Source)
at com.swiftmq.tools.requestreply.RequestServiceRegistry.dispatch(Unknown Source)
at com.swiftmq.admin.mgmt.Endpoint.onMessage(Unknown Source)
at com.swiftmq.jms.v510.MessageConsumerImpl.invokeMessageListener(Unknown Source)
at com.swiftmq.jms.v510.MessageConsumerImpl.invokeConsumer(Unknown Source)
at com.swiftmq.jms.v510.SessionImpl$SessionDeliveryQueue.process(Unknown Source)
at com.swiftmq.tools.queue.SingleProcessorQueue.dequeue(Unknown Source)
at com.swiftmq.jms.v510.SessionImpl$SessionTask.run(Unknown Source)
at com.swiftmq.client.thread.PoolExecutor.run(Unknown Source)
   <<Less

Re: Incorrect router status returned from CLI

Posted By:   Andreas_Mueller  
Posted On:   Monday, April 25, 2005 11:54 PM

Yes, we introduced the request timeout just for this purpose. If you reboot the other router while a request is pending, you might get a request timeout. In releases prior to 5.2.0, CLI would just hang. So in the case of a request timeout, you would need to resend the command.
About | Sitemap | Contact