You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "Timothy Bish (JIRA)" <ji...@apache.org> on 2015/03/06 22:35:41 UTC

[jira] [Commented] (AMQ-5588) Failover transport should not hang on startup if it cannot connect & Failover transport timeout options overrides reconnection strategy

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

Timothy Bish commented on AMQ-5588:
-----------------------------------

This is how it works, if startMaxReconnectAttempts is set then it will try that many times on start and fail if no broker can be connected to.  If a connection is made then goes down the behavior is controlled by maxReconnectAttempts which defaults to unlimited attempts.  The client hangs on start if no initial connection, if it didn't hang there it would have to hang on createSession or any other method as there is no connection so no local resources can be created. 

> Failover transport should not hang on startup if it cannot connect & Failover transport timeout options overrides reconnection strategy
> ---------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: AMQ-5588
>                 URL: https://issues.apache.org/jira/browse/AMQ-5588
>             Project: ActiveMQ
>          Issue Type: Bug
>         Environment: Unix, Mule ESB, AMQ- 5.9, java
>            Reporter: Savita
>            Priority: Blocker
>
> I am having issues discussed in the 2 defects (AMQ-2114) & (AMQCPP-545)
> (AMQ-2114) Failover transport should not hang on startup if it cannot connect
> (AMQCPP-545) Failover transport timeout options should only operate on Message sends.
> If AMQ is down while on startup, the reconnect strategy does not work and blocks there forever. 
> To overcome this blocking issue, we are setting timeout on the broker. But, this will throw a Failover timeout exception. 
> Once this exception occurs, the mule server is not able to deploy the applications which are depending on this connection. However, we have no issues if the connection goes down after the applications are deployed. The applications successfully reconnect to AMQ once, the connection is up.
> This problem is happening if the mule server is started while the AMQ is down. The applications fail to get deployed despite the <reconnect-forever blocking="false" frequency="3000"/> strategy. This is because of the Failover timeout exception.
> Here is the part of log:
> Caused by: java.io.IOException: Failover timeout of 30000 ms reached.
>         at org.apache.activemq.transport.failover.FailoverTransport.oneway(FailoverTransport.java:532)
>         at org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:40)
>         at org.apache.activemq.transport.ResponseCorrelator.asyncRequest(ResponseCorrelator.java:81)
>         at org.apache.activemq.transport.ResponseCorrelator.request(ResponseCorrelator.java:86)
>         at org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1284)
> Please, help me with the fix. We are using Unix servers.
> Let me know if you need more information.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)