Skip to content
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

Swarm Murder University #1461

Merged
merged 51 commits into from Apr 23, 2023
Merged

Swarm Murder University #1461

merged 51 commits into from Apr 23, 2023

Conversation

Cyberboss
Copy link
Member

@Cyberboss Cyberboss commented Apr 22, 2023

A bunch of tests, fixes, and improvements regarding the swarm system. Work on #1459 but I wouldn't call it extensive yet.

🆑 Configuration
The new config version is 4.6.0.
Added Swarm:UpdateRequiredNodeCount option. This is the number of additional nodes a swarm controller expects to be present for an update.
/:cl:

🆑
Reduced surface area for potential failure in distributed swarm server updates.
Fixed potential deadlock if a swarm controller abandons a node that is waiting to commit an update.
/:cl:

🆑 HTTP API
Added error code 28 for if an update can't start due to a server swarm not being fully populated (responds with HTTP 424) .
/:cl:

- Extract bulk of actions into ServerUpdater class, based on old ServerUpdateInitiator.
- Add new ServerUpdateIntiator for AdministrationController

These changes break some interdependencies between SwarmService and Server.

- Correct the meaning of IRestartHandler.HandleRestart's second argument.
- Eliminate usage of SetupApplication's static IAssemblyInformationProvider and IIOManager.
- Set all requests to use assemblyInformationProvider UserAgent by default.
- Removed DefaultIOManager's dependency on IAssemblyInformationProvider.
- Fixed bad Dispose scope for requests under construction in SwarmService.
- No longer registers for restart unnecessarily
- Fixed infinite wait when committing update
- Fixed unregistering without a registration
- Abort updates if the controller health check fails
@Cyberboss Cyberboss added the Swarm Related to server swarm feature label Apr 22, 2023
@Cyberboss Cyberboss added this to the v5.12.0 milestone Apr 22, 2023
@Iamgoofball
Copy link

this is the definition of cushy ivy league school

@codecov
Copy link

codecov bot commented Apr 23, 2023

Codecov Report

Merging #1461 (38753e4) into dev (633b628) will decrease coverage by 0.05%.
The diff coverage is 74.95%.

@@            Coverage Diff             @@
##              dev    #1461      +/-   ##
==========================================
- Coverage   91.63%   91.59%   -0.05%     
==========================================
  Files         564      568       +4     
  Lines      116483   116644     +161     
==========================================
+ Hits       106744   106835      +91     
- Misses       9739     9809      +70     

@Cyberboss Cyberboss merged commit 8e179c5 into dev Apr 23, 2023
19 of 20 checks passed
@Cyberboss Cyberboss deleted the 1459-SwarmMurderUniversity branch April 23, 2023 04:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Code Improvement Brush up on code standards Configuration Regarding the server setup JSON Fix Fixes incorrect functionality Host Watchdog Change A change to one of the Host./<Watchdog/Service/Console> projects which do not receive auto updates HTTP API The JSON Web API that controls the server Regression Test We've seen this before, make sure it doesn't happen again Swarm Related to server swarm feature
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants