pub async fn connect_with_retry( host: &str, port: &str, retry_interval: Duration, max_duration: Duration, ) -> Result<Client, String>