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

Gary Tully resolved AMQ-2877.
-----------------------------

    Resolution: Fixed

resolve in 988974

having a timeout on the wait for pull may also be sensible, lets see.

> Failover and prefetch=0 can result in hung consumers if the MessagePull 
> command is lost
> ---------------------------------------------------------------------------------------
>
>                 Key: AMQ-2877
>                 URL: https://issues.apache.org/activemq/browse/AMQ-2877
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: JMS client
>    Affects Versions: 5.4.0
>            Reporter: Gary Tully
>            Assignee: Gary Tully
>             Fix For: 5.4.1
>
>
> With prefetch=0,  a consumer that has no messages sends an async message to 
> the broker to have it dispatch a single message and waits for the dispatch to 
> ocurr. prefetch=0 makes the consumer a pull consumer, in that it has to ask 
> for a message each time.
> there is a possibility that failover occurs just after the send of the 
> messagePull command such that the consumer  is blocked waiting for a message 
> but a failover connection or broker does not know about the outstanding pull 
> command. The connection state tracker is the normal mechanism for command 
> replay after failover. This needs to be extended to track messagePull 
> commands, keeping one outstanding reference for each consumer/destination 
> pair that can be replayed after failover.
> It makes sense to reuse the messageCache for this. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to