__DisablePredictedCircuits causes bootstrap to hang at "Connecting to Tor Network"
When __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
__DisablePredictedCircuits
is set, or - make at least one connection at "Connecting to Tor Network" even if
__DisablePredictedCircuits
is set
The first risks repeatedly making connections if tor isn't connected to the network, the second risks making connections the user doesn't want.
To upload designs, you'll need to enable LFS and have admin enable hashed storage. More information