Skip to content

Harden tailnet coordination code #4578

Closed as not planned
Closed as not planned
@kylecarbs

Description

@kylecarbs

There are many places where I could add a mutex deadlock and the tests wouldn't catch it, which seems likely to happen in production scenarios.

This code should be almost 100% covered since a deadlock kills all future workspace connections until a restart. We should decompose this code into a more testable fashion and maybe change the structure of the ServeXXX for easier testing.

Cases to cover:

  • >80% coverage
  • Database disconnect with HA coordinator for pubsub
  • Client connects before agent on different servers
  • Agent connects before client on different servers
  • Block massive node payload from being sent
  • Rate-limit nodes being sent from either end (maybe debounce at a low latency instead?)
  • Ensure AsOf is respected when entering new nodes from clients, agents, and pubsub

Metadata

Metadata

Assignees

Labels

apiArea: HTTP APIstaleThis issue is like stale bread.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions