* We're sending peer change messages to older routers that don't understand them.
* We should probably use the older controller link management code for routers without the link management stability fixes
* Includes a few minor cleanups
Adds config to controller for heartbeat config
Add config to routers for heartbeat config
Adds configurable heartbeats to controller <-> controller connections
Add more raft config knobs
Refactor peer handles to be consistent with other handlers
Allow inspect to work across controllers
Add config and clusterconfig inspect support
* progress on controller communication
* added yaml encoding/decoding
* move dispatch callbacks to be more consistent
* update unit tests
* small cleaups
* Add new datadir to unit tests
* fix linter
* Was able to use FSM hooks to get configuration updates to show raft state
* Send index to prevent older versions from being applied and added leader override
* pr comments and added/removed ctrl connections
* added error logging
* pr comments
* spelling and bad log newlines
* added delete from the toconnect map and added end case to the background connect
* reordered removal from map
* added mtx around access. Forgot that was changed to be unsopported.
Previously we often had two sets of events, one in the network
package, and then another in the events package. We now only
have one, in the events package. Events now have a public API,
with minimal deps. There's an implementation package which has
the dependencies. This allows the network package to generate
events, without have a circular dependency on the events
implementation package.
* threaded a timout through fabric
* updated default timeout
* pr comments
* fix timing
* applied pr comments
* removed one more utc
* updated to time until and conditionally add deadline
* signed commit
* small proto change
* regenerate pb
* missed extra import
If we can't queue to dial pool, don't block, fail right away
Ensure we don't write response in reader go-routine
Add timeouts on response writes, so they don't block indefinitely
Allow xgress and links to be destinguished by ID suffix
If a link destination is missing, send a link fault
Add forget-link router debug agent op to allow testing invalid
destinations