Cluster.refresh_nodes
immediately throws exception if control connection is down
#307
Labels
bug
Something isn't working
upstream-issue
Issue is not specific to our fork and Scylla and should be also fixed in the upstream
As reported in scylladb/scylladb#17616, when a user calls
Cluster
'srefresh_nodes()
while the control connection is down,refresh_nodes()
will fail with an exception:As also suggested in #273, maybe the default behavior of the driver should be to wait for the (control) connection to come back instead of failing immediately.
Such a behavior should have some (configurable?) timeout to avoid waiting for an infinity. For this particular usecase, it might be an overkill to introduce a retry mechanism for this specific method.
Another "solution" to the problem would be to better signal to the driver users that this function can throw - or maybe redesign it to return a boolean (or some more detailed type) whether the operation succeed or failed - it would be the responsibility of the user to retry it (and the user would be more aware of this fact).
The text was updated successfully, but these errors were encountered: