Problem:
In causal cluster when driver encounters connection errors during read or write operation, the failed server addresses remain in the routing table. This causes the driver to continuously attempt connections to dead/unreachable servers.
Solution:
When connection errors occur, the failed server address should be removed from the routing table to prevent future connection attempts until the routing table is refreshed through normal discovery.
Version Information:
- Neo4j Ruby Driver: 5.7.0.alpha.4
- Neo4j Version: 4.4.36-enterprise (cluster)
- Ruby Version: >= 3.4.6