ServiceControl Management 4.x crashes when 5.x or newer instances are already installed with System.InvalidOperationException: Sequence contains no matching element
#3792
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
ServiceControl 5.0 and above will not have a Windows Installer, which means that a user can have multiple versions of Service Control Management that can be used back and forth without having to uninstall/reinstall a different version.
That introduces a bug in ServiceControl 4.x because, by definition, ServiceControl 4 versions will not be able to understand the different transports and persistence options that are introduced in the future.
This bugfix shows some "Unknown" text when an instance's transport or persistence is not known to the current ServiceControl version. This will be shipped as part of ServiceControl 4.33.0, which is intended to be the last minor version of the 4.x timeline, and will be the last to be installed through a Windows Installer.
So if you have a hybrid system and need to be able to install ServiceControl 5.x instances while still managing a few ServiceControl 4.x instances, update Service Control Management to 4.33 so you can open it and view the 5.x instances without crashing.
Symptoms
After installing a ServiceControl 5.0 instance, ServiceControl Management 4.x fails on startup with the error:
Who's affected
Any user of ServiceControl 4 will be affected after using a new version of Service Control Management to install any ServiceControl version 5 instance.
Root cause
In ServiceControl 4.x (all versions) and earlier, ServiceControl Management was installed with Windows Installer and only one version existed at a time. In ServiceControl 5 there can be multiple versions of ServiceControl Management that will not have any knowledge of future versions of ServiceControl that may already be installed.