[
https://issues.apache.org/jira/browse/AMQ-4845?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13813141#comment-13813141
]
Timothy Bish commented on AMQ-4845:
-----------------------------------
The timed and no wait variants of the receive call provide zero guarantee that
a message is returned no matter how many are pending on the queue at the
Broker, there must be a message already waiting on the client side prefetch fir
these methods to return anything.
> ActiveMQQueueReceiver.receive(1L) method not returning messages with timeout
> value of 1L
> ----------------------------------------------------------------------------------------
>
> Key: AMQ-4845
> URL: https://issues.apache.org/jira/browse/AMQ-4845
> Project: ActiveMQ
> Issue Type: Bug
> Components: JMS client
> Affects Versions: 5.8.0
> Environment: Windows 7 64bit. Client and server in the same box.
> Reporter: Andres Candal
> Attachments: TestMessagingSendReceive.java,
> jms-sync-queue-app-context.xml
>
>
> Calling the method ActiveMQQueueReceiver.receive with param timeout=1L
> doesn´t allways return pending messages. Debugging works, it seems to be a
> latency or timing issue that doesn't affect debugging as debugging is slower
> than running the code without debugger.
> I attach Spring Template based test case but the issue occurs also with
> direct api call. Changing the timeout param to 100L works perfectly.
--
This message was sent by Atlassian JIRA
(v6.1#6144)