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

Bas Claessen commented on CAMEL-14148:
--------------------------------------

Added PRs for master and camel-2.x

> exception during first resolve of temporary jms destination causes infinitive 
> wait
> ----------------------------------------------------------------------------------
>
>                 Key: CAMEL-14148
>                 URL: https://issues.apache.org/jira/browse/CAMEL-14148
>             Project: Camel
>          Issue Type: Bug
>          Components: camel-jms
>    Affects Versions: 2.24.2
>            Reporter: Bas Claessen
>            Priority: Minor
>          Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> An exception during the first attempt to resolve a temporary destination will 
> cause an infinitive wait for next resolve attempts after the exception is 
> cleared.
> A likely scenario for this behaviour to occur is when no connection to a jms 
> server can be established during startup.
> This bug is caused by not setting the refreshWanted to false when no previous 
> destination exists in the 
> org.apache.camel.component.jms.reply.TemporaryQueueReplyManager$TemporaryReplyQueueDestinationResolver
>  class.
> {code:java}
> public Destination resolveDestinationName(Session session, String 
> destinationName, boolean pubSubDomain) throws JMSException {
>     // use a temporary queue to gather the reply message
>     synchronized (refreshWanted) {
>         if (queue == null || refreshWanted.compareAndSet(true, false)) {
>             queue = session.createTemporaryQueue();
>             setReplyTo(queue);
>             if (log.isDebugEnabled()) {
>                 log.debug("Refreshed Temporary ReplyTo Queue. New queue: {}", 
> queue.getQueueName());
>             }
>             refreshWanted.notifyAll();
>         }
>     }
>     return queue;
> }
> {code}
> When queue == null the refreshWanted.compareAndSet(true, false) is not 
> executed.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to