Skip to content

[TRACKING ISSUE] Refactor client connection manager to simplify [API-1298] #1263

@hz-devops-test

Description

@hz-devops-test

The tracking issue for the Java side PR.

See hazelcast/hazelcast#20806 for details.


Most of the logic is turned into a single threaded one to
be able reason about the logic easily.
Important ones that is responsibility of the single thread

  • Writing to and removing from activeConnections
  • Checking if all connections are gone and initating new cluster
  • Checking if cluster id has changed and initating failover
    if necessary.

We still connect to other members in parallel because we mainly
want a fast start. We gave up on one thing. We no longer try to
open connection to all members while trying to connection back
to a cluster. This does not effect initial start since in the
initial start, we had to wait for initial connection and member-list
from it to be able to connect all members anyway.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions