-
Notifications
You must be signed in to change notification settings - Fork 89
Exit policy #3785
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Exit policy #3785
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I Approve the Consensus side of things, without actually clicking Approve since that's a relatively small part of this PR.
I have a few comments, but all minor.
c2b8be7
to
56742ea
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good! Some small comments
By hiding `peerconn` we can simplify diffusion types. This is required if we want to add result type of protocols (on the initiator side).
ExitPolicy governs the delay for reconnecting either if any of the mini-protocol exists cleanly or throws an exception.
When any of the mini-protocol exits (either with an error or otherwise), we reactivation delay which is used by the outbound governor. It is expected that multiple mini-protocol exits roughly at the same time, e.g. in hot to warm transition `chain-sync`, `block-fetch` and `tx-submission` will terminate around the same time. For this reason the `setActivateTimes` is taking the maximum of the existing connect time and the new one, as well as the `ReconnectDelay` is an additive monoid.
The outbound governor needs to know the reconnection delay when a connection errors (asynchronous demotion to cold peer). We use the `ExitPolicy` `epErrorDelay`, which is set to 10 seconds. This patch fixes a bunch of TODOs.
bors merge |
3785: Exit policy r=coot a=coot Resolves #3779 Co-authored-by: Marcin Szamotulski <[email protected]>
Build failed: |
bors merge |
3893: Document flakiness of WallClock tests r=amesgen a=amesgen # Description Reported by `@coot` (found in #3785 (comment)), thanks! Co-authored-by: Alexander Esgen <[email protected]>
4120: Cherry picked network changes for cardano-node-1.35.5 release r=coot a=coot This cherry-picked patches from the following PRs: * #3794 * #3844 * #3785 * #3904 * #3915 * #3852 * #3970 * #3979 * #4015 * #4067 * #4004 * #4086 * #4113 * #4106 * #4127 * #4103 Also cherry-picked almost all the commits which modify GitHub actions: * 18c5244 Run GitHub Actions on pull requests * 3adf5a9 Use newer version of io-sim * ee9b7a6 Fix GH Actions Windows CI: switch from pkgconf to pkg-config * e6cf074 github-actions: use `ubuntu-latest` * 9a8b959 Updated versions of github actions * fc8f8f0 Fix GH Actions Windows CI caching * 7f07c40 Windows Github Actions now use MSYS2 * b21a7ce Fix chocolatey CI error * #4134 TODO: * [x] bump versions of packages * [x] input-output-hk/cardano-haskell-packages#84 Co-authored-by: Mark Tullsen <[email protected]> Co-authored-by: Marcin Szamotulski <[email protected]>
Resolves #3779