scylla-rust-driver
scylla-rust-driver copied to clipboard
Be more verbose when failing to fetch metadata
As seen in https://github.com/scylladb/scylladb/issues/19107, sometimes the driver may fail to fetch metadata from its peers and print messages in the logs such as:
2024-06-24T19:05:16.729306Z WARN scylla::transport::topology: Failed to establish control connection and fetch metadata on all known peers. Falling back to initial contact points.
2024-06-24T19:05:16.729347Z WARN scylla::transport::topology: Failed to fetch metadata using current control connection control_connection_address="172.31.29.124:9042" error=Protocol Error: system.peers or system.local has invalid column type
2024-06-24T19:05:16.733118Z ERROR scylla::transport::topology: Could not fetch metadata error=Protocol Error: system.peers or system.local has invalid column type
It is wise to know exactly which invalid data was found, such as from which host_id
, which column was found to be invalid and which value was returned.
Similar work has been done for the Python driver in https://github.com/scylladb/python-driver/issues/303