[ 
https://issues.apache.org/activemq/browse/AMQ-855?page=comments#action_36736 ] 
            
Vadim Pesochinskiy commented on AMQ-855:
----------------------------------------

> e.g. if we did implement prefetch of zero - which means don't deliver a 
> message to a consumer at all - 
> unless they perform a consumer.receive() - even then, the consumer could then 
> hang/deadlock and never
> actually acknowledge or process the message.

If consumer hangs and message is not processed is a different problem. Even if 
messages are lost in such case, nobody would blame AMQ. If you kill consumer 
and re-despatch, it would be brilliant. But if my consumers do not hang, crash 
or burn, can I just get my messages?

James, could you please re-open this issue? I spend 1 month working on this 
project and now I will have to throw it all away and do explaining with my 
manager. I cannot apply my own fix, you will not fix it. What am I supposed to 
do now?

> Add support for prefetchSize = 0
> --------------------------------
>
>                 Key: AMQ-855
>                 URL: https://issues.apache.org/activemq/browse/AMQ-855
>             Project: ActiveMQ
>          Issue Type: New Feature
>          Components: Broker
>    Affects Versions: 4.0, 4.0.1, 4.0.2
>         Environment: any
>            Reporter: Vadim Pesochinskiy
>            Priority: Critical
>             Fix For: 4.2
>
>
> This feature would enable to support following test case:
> 2 servers are processing 3 submitted jobs with following processing times 10 
> min, 1 min, 1 min. This sequence should finish in 10 minutes as one service 
> will pick up the 10 minutes job, meanwhile the other one should manage the 
> two 1 minute jobs. Since I cannot set prefetchSize=0, one of the 1 minute 
> jobs is sitting in prefetch buffer and the jobs are processed in 11 minutes 
> instead of 10.
> This is simplification of the real scenario where I have about 30 consumers 
> submitting jobs to 20 consumers through AMQ 4.0.1. I have following problems:
> • Messages are sitting in prefetch buffer are not available to processors, 
> which results in a lot of idle time.
> • Order of processing is random. For some reason Job # 20 is processed after 
> Job # 1500. Since senders are synchronously blocked this can result in 
> time-outs.
> • Some requests are real-time, i.e. there is a user waiting, so the system 
> cannot wait, so AMQ-850 does not fix this issue.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
https://issues.apache.org/activemq/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira


Reply via email to