[jboss-jira] [JBoss JIRA] (JGRP-1428) UnicastRequest and GroupRequest should mark a target as suspected if the target has already left the cluster at creation time

Bela Ban (JIRA) jira-events at lists.jboss.org
Mon Feb 27 06:58:36 EST 2012


    [ https://issues.jboss.org/browse/JGRP-1428?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12671154#comment-12671154 ] 

Bela Ban commented on JGRP-1428:
--------------------------------

Use case:
- The view is {A,B,C,D}
- A invokes a group request on the cluster
- The GroupRequest is created with targets A, B, C and D
- In RequestCorrelator.sendRequest(), we add the request to the requests hashmap: whenever a view is received, we mark non-members in the request as suspected and potentially cause the request to return (if it is blocking)
- However, if a new view {A,B,C} is received *after* creation of the request, but *before* the request is registered for view changes, the request will *not* mark D in its requests hashmap as suspected
--> The request will block until (1) another view change (e.g. {A,B,C,F}) is received or (2) until it times out

SOLUTION:
- In RequestCorrelator.sendRequest(), after registering the request for view changes, we simply call Request.viewChange(View) with the current view. This will cause D to be marked as suspected
                
> UnicastRequest and GroupRequest should mark a target as suspected if the target has already left the cluster at creation time
> -----------------------------------------------------------------------------------------------------------------------------
>
>                 Key: JGRP-1428
>                 URL: https://issues.jboss.org/browse/JGRP-1428
>             Project: JGroups
>          Issue Type: Bug
>    Affects Versions: 3.0.5, 3.1
>            Reporter: Dan Berindei
>            Assignee: Bela Ban
>            Priority: Critical
>             Fix For: 3.0.6, 3.1
>
>
> UnicastRequest and GroupsRequest both detect if a target has left the cluster and mark its response as "suspected".
> However, if the node has already left the cluster by the time the request is created, its response is not marked as "suspected" and the request never properly finishes.

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

        


More information about the jboss-jira mailing list