You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Ashwin Karpe (Issue Comment Edited) (JIRA)" <ji...@apache.org> on 2012/03/09 16:42:57 UTC

[jira] [Issue Comment Edited] (CAMEL-5070) Message Loss when using Weighted Round Robin LoadBalancer

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

Ashwin Karpe edited comment on CAMEL-5070 at 3/9/12 3:41 PM:
-------------------------------------------------------------

Hi Nikos,

I can see the scenario you are mentioning happening under load where the counter and/or runtimeWeight may get out of synch under load...

I am however unclear on the queues growing without reason issue. Do you mean there are additional messages being created and dispatched to the queues.

Cheers,

Ashwin...
                
      was (Author: akarpe):
    Hi Nikos,

I can see the scenario you are mentioning happening under load where the counter may get out of synch under load...

I am however unclear on the queues growing without reason issue. Do you mean there are additional messages being created and dispatched to the queues.

Cheers,

Ashwin...
                  
> Message Loss when using Weighted Round Robin LoadBalancer
> ---------------------------------------------------------
>
>                 Key: CAMEL-5070
>                 URL: https://issues.apache.org/jira/browse/CAMEL-5070
>             Project: Camel
>          Issue Type: Bug
>          Components: camel-core
>    Affects Versions: 2.9.1
>            Reporter: Nikolaos Dimos
>            Assignee: Ashwin Karpe
>         Attachments: loadbalancer-itest.zip
>
>
> chooseProcessor method accesses resources in a non synchronized fashion. This leads in errors during loadbalancing and as a result messages are lost. I have created a project that provides an integration test (using karaf 2.2.5 and a custom command to check messages of the activemq broker) with a custom weighted round robin loadbalancer that "seems" to solve the issue of lost messages.
>  
> The problem with the provided solution is that when messages are dequeued from the second stage of queues (queues1, 2 and 3) in custom-loadbalancer-route subproject the jmsconsumer threads also block (checked this using profiler). I would expect only the jmsconsumer threads of the first queue (initial.queue) to block waiting for the synchronized chooseProcessor method. Any clues on why this happens?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira