scylla-rust-driver icon indicating copy to clipboard operation
scylla-rust-driver copied to clipboard

Be more verbose when failing to fetch metadata

Open fee-mendes opened this issue 8 months ago • 1 comments

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

fee-mendes avatar Jun 24 '24 23:06 fee-mendes