connect_cached to implement auto-reconnect