Fixes #1852 - Unmap addresses from routers that become unreachable in topology changes.#1854
Fixes #1852 - Unmap addresses from routers that become unreachable in topology changes.#1854ted-ross wants to merge 9 commits intoskupperproject:mainfrom
Conversation
…unreachable in topology changes.
|
This pull request sets up GitHub code scanning for this repository. Once the scans have completed and the checks have passed, the analysis results for this pull request branch will appear on this overview. Once you merge this pull request, the 'Security' tab will show more code scanning analysis results (for example, for the default branch). Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results. For more information about GitHub code scanning, check out the documentation. |
|
@ted-ross Would it make sense to unmap the addresses in two phases in order to give a chance to a lost link to recover? I.e. mark the unreachable nodes first and call unmap a few ticks later if they are still unreachable. I'm thinking of a router losing the access to a large number of other routers due to a peer is being restarted. |
This is a good suggestion. My main concern with this PR is that it might cause a lot of churn if there was a momentary loss of connection. This is why the original functionality was in place, but 60 seconds is arguably much too long of an interval to allow disconnects to get fixed. |
|
Further to @gabordozsa 's suggestion... We could add a new configuration interval called |
… of addresses on a remote router that becomes unreachable.
|
This PR needs a test to validate the new functionality. |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #1854 +/- ##
=======================================
- Coverage 70.5% 67.2% -3.4%
=======================================
Files 209 204 -5
Lines 47838 47716 -122
Branches 5156 5326 +170
=======================================
- Hits 33765 32081 -1684
- Misses 11608 13405 +1797
+ Partials 2465 2230 -235
Flags with carried forward coverage won't be shown. Click here to find out more.
🚀 New features to boost your workflow:
|
ted-ross
left a comment
There was a problem hiding this comment.
The changes to the PR are very good. I inserted a couple of questions for discussion before we approve this.
24017bc to
03f061b
Compare
- Create a common base class for the non/TLS and TLS tests in order to avoid launching duplicate router and grpc server instances for the TLS tests - Disable fork support for grpcio in order to stabilize the test on CentOS 9 (python 3.9)
- pip cannot upgrade typing_extensions if an older version is installed from deb package - make 'sudo' pick-up the PIP_BREAK_SYSTEM_PACKAGES env var
NOTE: This is a draft PR. I'm putting this here as a suggested way to solve the problem in the raised issue.
This needs more testing and examination before it can be accepted.