Details
-
Improvement
-
Status: Open
-
Normal
-
Resolution: Unresolved
-
None
Description
Java-Driver's note on the issue: https://github.com/datastax/java-driver/blob/2.1/driver-core/src/main/java/com/datastax/driver/core/Cluster.java#L1087
What the tests for the drivers (Java, Python, C#, etc..) see is a need for sleeps to cover the race conditions between when isUp() returns true and the nodes are actually ready to be accessed.
Could we instead, at the very end of the startup process when the native protocol is up and active, have the system tables be written to denote that the node is now UP and active?
If writing to the system tables is not the best idea, could we figure out another solution to get rid of this race condition, thereby simplifying the testing of the drivers and removing test cases riddled with sleeps of up to 40 seconds?