Skip to content
GitLab
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 326
    • Issues 326
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 30
    • Merge requests 30
  • 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
  • #40169
Closed
Open
Issue created Oct 27, 2020 by Mike Perry@mikeperryDeveloper

Circuit Build Timeout code needs cleanup

There's two places where we time out circuits: circuit_expire_building and circuit_build_times_handle_completed_hop(). circuit_expire_building is filled with 19 years of cruft and complexity, and only operates on the second resolution, instead of milliseconds.

These probably only affect timeout in rare cases -- #40157 (closed) seems to show that with fixes from #40168 (closed), then we get very close to the target 20% timeout. But there's so much old cruft here that we should clean it up anyway. It might affect UX very poorly in some edge cases.

This is especially true for onion services, which rely primarily on circuit_expire_building(). There's likely many bad performance consequences of this, for them.

Edited Oct 24, 2022 by Mike Perry
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking