[infinispan-issues] [JBoss JIRA] (ISPN-3223) HotRod Client recieves stale toplogy view on instance leave

Alan Field (JIRA) issues at jboss.org
Wed Sep 10 03:35:20 EDT 2014


     [ https://issues.jboss.org/browse/ISPN-3223?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alan Field updated ISPN-3223:
-----------------------------
    Attachment: hr-protocol-13.log
                hr-protocol-20.log


This issue is specific to the HotRod 2.0 protocol. The "hr-protocol-13.log" shows the behavior using the HotRod 1.3 protocol when a node joins and then leaves the cluster. After the join, a new topology view adds the new node. After the leave, a new topology view removes the member from the cluster. 

The "hr-protocol-20.log" shows the behavior using the HotRod 2.0 protocol. The join behavior is the same. After the leave, a new topology view is received that includes two members. These logs were generated against an Infinispan 7.0.0-SNAPSHOT build using the latest code from the Infinispan repo as of 9/10.

> HotRod Client recieves stale toplogy view on instance leave
> -----------------------------------------------------------
>
>                 Key: ISPN-3223
>                 URL: https://issues.jboss.org/browse/ISPN-3223
>             Project: Infinispan
>          Issue Type: Bug
>          Components: Remote Protocols
>    Affects Versions: 5.2.4.Final, 5.3.0.CR1
>            Reporter: Takayoshi Kimura
>            Assignee: Galder Zamarreño
>         Attachments: hr-protocol-13.log, hr-protocol-20.log
>
>
> When killed a HotRod server node, HotRod Clinet sometimes recieves a stale toplogy view which includes the dead node and uses it as a latest view. In this case the client keeps trying to connect that node and keeps failing.
> Looks like the AbstractEncoder1x.generateTopologyResponse() takes care of node join but doesn't handle node leave:
> {noformat}
> if (!serverEndpointsMap.keySet.containsAll(cacheMembers)) {
> {noformat}
> For example, serverEndpointsMap.keySet is [A, B, C] and the actual cacheMembers is [A, B].



--
This message was sent by Atlassian JIRA
(v6.3.1#6329)



More information about the infinispan-issues mailing list