[ 
https://issues.apache.org/jira/browse/QPIDJMS-563?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Shaan Jayaratna updated QPIDJMS-563:
------------------------------------
    Attachment: rabbitmq-client-with-failover.zip

> QPID JMS - Failover - endless loop on sending a message with reject outcome
> ---------------------------------------------------------------------------
>
>                 Key: QPIDJMS-563
>                 URL: https://issues.apache.org/jira/browse/QPIDJMS-563
>             Project: Qpid JMS
>          Issue Type: Bug
>          Components: qpid-jms-client
>    Affects Versions: 1.5.0
>            Reporter: Thomas Stollenwerk
>            Priority: Critical
>         Attachments: rabbitmq-client-with-failover.zip
>
>
> +*Summary:*+
> Having a amqp v1 message which is rejected by the amqp v1 broker results in 
> an endless failover loop blocking the JmsMessageProducer.send method.
> +*Expected:*+
> The failover of the qpid jms client tries to connect and send the rejected 
> message in a maximum of failover.maxReconnectAttempts.
> +*Actual:*+
> The result of the message send task is not taken into account for counting 
> the attempts.
> The JmsMessageProducer.send gets stuck forever.
>  # Failover connects to the failover uri and then resets the attempt counter.
>  # Sending the message results in REJECT outcome.
>  # Failover connects to the next failover uri and then resets the attempt 
> counter.
>  # Sending the message results in REJECT outcome.
>  # ... repeats and does not stop on maxReconnectAttempts.
> +*Code analysis:*+
> *FailoverProvider.java#L1282* already resets the connection attempts with 
> *reconnectControl.connectionEstablished()* not waiting for the success of the 
> send task, resulting in an endless failover loop.
> +*Background:*+
> In our case we are using RabbitMQ with the amqp v1 plugin. There are 
> scenarios where the broker is answering with REJECT outcomes (overflow 
> policy, high watermark etc). Right now we cannot use this feature because the 
> client is stuck and the RabbitMQ is flooded with reconnects.
> We would be very grateful having a fix. 
> Thanks for the good work and best regards
> Thomas
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to