Skip to content

[TRACKING ISSUE] Do not try to connect to the old member list after the cluster changes [API-2038] #958

Open
@hz-devops-test

Description

@hz-devops-test

The tracking issue for the Java side PR.

See hazelcast/hazelcast#24745 for details.


During failover, when the client is about to try to connect to the next cluster, it resets some services including the cluster service.

In its reset logic, cluster service clears the member list version, but leaves the members as it is, as there are some services/proxies that rely on the fact that the member list cannot be empty.

This creates a problem for the failover case. After the cluster change, the client still tries to connect to the last known member list, which is the members of the previous cluster.

To solve the problem, I have introduced a new method to the cluster service, which returns the "effective" member list. That is, it returns an empty list after the service is reset, but returns the member list as expected otherwise. With that, the connection logic simply skips the old member list after the client decides to change the cluster to try to connect to.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions