__DisablePredictedCircuits causes bootstrap to hang at "Connecting to Tor Network"
__DisablePredictedCircuits is set in the torrc, bootstrap hangs at 80% - "Connecting to Tor Network".
This happens in hidden service configurations, it may happen in other client or server configurations as well.
I think this is because:
- no predicted circuits are being built, and therefore
- tor never completes an OR connection, and therefore
- tor never thinks it has bootstrapped, and therefore
- tor doesn't make any of the OR connections it would make as part of its configured function
To fix this, we need to either:
- assume tor is connected to the network if it gets to "Connecting to Tor Network" and
__DisablePredictedCircuitsis set, or
- make at least one connection at "Connecting to Tor Network" even if
The first risks repeatedly making connections if tor isn't connected to the network, the second risks making connections the user doesn't want.