pylib.copyutil presently accesses cluster metadata using shell.hostname which could be an unresolved hostname.
Cluster metadata normally refers to hosts in terms of numeric host address, not hostname. This works in the current integration because the driver allows hosts with unresolved names into metadata during the initial control connection. In a future version of the driver, that anomaly is removed, and no duplicate hosts-by-name are present in the metadata.
We will need to update copyutil to refer to hosts by address when accessing metadata. This can be accomplished by one of two methods presently:
- shell.conn.control_connection.host (gives the current connected host address)
- scan metadata.all_hosts() for the one that is_up and use host.address/host.datacenter