[jboss-jira] [JBoss JIRA] (JGRP-1541) Discovery: persist discovery responses

Bela Ban (JIRA) jira-events at lists.jboss.org
Fri Nov 16 02:47:21 EST 2012


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

Bela Ban commented on JGRP-1541:
--------------------------------

Hi David,

I implemented this because there is a real-world use case for it in conjunction with the xsite replication feature (RELAY2) which can't list all possible hosts in TCPPING.initial_hosts. This cannot be done at the application level.
PDC only stores (1) logical address, (2) physical address and (3) logical name (the latter is not really needed for correct operation though). Yes, if you need to store app-specific information, then you'd have to resort to an application-level protocol.
If you want to take a look at PDC, I'm always happy to get feedback.
                
> Discovery: persist discovery responses
> --------------------------------------
>
>                 Key: JGRP-1541
>                 URL: https://issues.jboss.org/browse/JGRP-1541
>             Project: JGroups
>          Issue Type: Feature Request
>            Reporter: Bela Ban
>            Assignee: Bela Ban
>             Fix For: 3.3
>
>
> When we use TCPPING.initial_hosts=A, and have nodes A, B and C, then the following can happen:
> - A is started. The view is {A}
> - B is started, finds A and joins the cluster. The view is {A,B}
> - C is started, finds A and joins the cluster. The view is now {A,B,C}
> - A is killed. The view is now {B,C}
> - C is restarted
> --> C won't find A therefore cannot ask B to join it (C doesn't know about B)
> SOLUTION:
> - If every member persisted its discovery results on disk, C would still know about A and B, and could therefore discover B
> - This could be implemented directly in TCPPING, or as a generic, separate, protocol (possibly useful for other discovery protocols such as S3_PING, TCPGOSSIP (when the GossipRouter is down) as well)
> - The disk cache would have to include an expiry mechanism, so that the file doesn't grow forever, and also stale results aren't returned forever
> - This mechanism would not work though if C came up the first time (no file on disk yet) and A wasn't running.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


More information about the jboss-jira mailing list