Unable to bootstrap when no relays meet criteria; logging messages unhelpful
Very minor thing but when tor is unable to create a circuit that meets the torrc's criteria tor fails to bootstrap in a confusing way. For example, [stem's tutorial demos exiting through Russia](https://stem.torproject.org/tutorials/to_russia_with_love.html) but the tor network doesn't have any Russian exits right now. The result is that tor bootstrapping hangs at 45% ("Asking for relay descriptors")... ``` torrc: ExitNodes {ru} tor output: Jun 04 08:56:59.794 [notice] Tor v0.2.7.1-alpha-dev (git-d5e4a6343694574c) running on Linux with Libevent 2.0.16-stable, OpenSSL 1.0.1 and Zlib 1.2.3.4. Jun 04 08:56:59.794 [notice] Tor can't help you if you use it wrong! Learn how to be safe at https://www.torproject.org/download/download#warning Jun 04 08:56:59.794 [notice] This version is not a stable Tor release. Expect more bugs than usual. Jun 04 08:56:59.802 [notice] Opening Socks listener on 127.0.0.1:7000 Jun 04 08:56:59.000 [warn] Failed to open GEOIP file /usr/local/share/tor/geoip. We've been configured to use (or avoid) nodes in certain countries, and we need GEOIP information to figure out which ones they are. Jun 04 08:56:59.000 [warn] Failed to open GEOIP file /usr/local/share/tor/geoip6. We've been configured to use (or avoid) nodes in certain countries, and we need GEOIP information to figure out which ones they are. Jun 04 08:56:59.000 [notice] Bootstrapped 0%: Starting Jun 04 08:57:02.000 [notice] Bootstrapped 45%: Asking for relay descriptors ``` Rather than just hang we should emit a message saying what's up. Maybe terminate too.
issue