Skip to content
GitLab
  • Menu
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • Tor Tor
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 311
    • Issues 311
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 35
    • Merge requests 35
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • The Tor Project
  • Core
  • TorTor
  • Issues
  • #33582
Closed
Open
Created Mar 10, 2020 by teor@teor

Make bridges wait until they have bootstrapped, before publishing their descriptor

Instead of this fix, we can make chutney check tor's logs for reachability self-test successes (legacy/trac#34037 (moved)), or implement strict self-tests (legacy/trac#33222 (moved)).

On bridges, there's a race condition when bridges try to publish their descriptor to the bridge authority:

  • bridges try to publish their descriptors before bootstrapping
  • but bridges can't publish their descriptors, because they don't have enough directory info to build a circuit to the bridge authority

Bridges will eventually try to publish their descriptors again, when they become dirty.

We should make bridges wait until they have bootstrapped, before they try to publish their descriptors. (This might be a good change for relays as well: there isn't much point in publishing a relay that can't bootstrap.)

This issue happens regardless of AssumeReachable. It is most obvious in chutney networks.

This ticket isn't essential. But the workarounds seem to cause weird race conditions, which are time-consuming to diagnose and fix.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking