Octopus Server Licence - Non-Compliant License Error
Team
- [X] I've assigned a team label to this issue
Severity
Several Customers Effected but a workaround exists
Version
Effects Latest Version
Latest Version
I could reproduce the problem in the latest build
What happened?
When upgrading Octopus Server, if the license format is a previous XML license format, it results in the the error Your Octopus Server subscription expired on Monday, 01 January 0001 (738133 days ago) will be displayed.
This could be improved to instead offer a valid license instead or an improved error message. See Internal Discussion.
Reproduction
Haven't reproduced but is typical of the upgrade from earlier versions before the license changed.
Error and Stacktrace
Error 9/16/2021 10:11:19 AM .NET Runtime 1026 None "Application: Octopus.Server.exe
CoreCLR Version: 5.0.921.35908
.NET Version: 5.0.9
Description: The process was terminated due to an unhandled exception.
Exception Info: Octopus.Shared.ControlledFailureException: One of the pre-conditions to safely upgrade your database has failed, and the upgrade cannot continue.
- PASS: All columns use the default collation.
- FAIL: Your Octopus Server would not be compliant with your license if we allowed the upgrade to continue. Here is the summary of the license check: Your Octopus Server subscription expired on Monday, 01 January 0001 (738048 days ago) and has not been renewed. You will be prevented from performing key activities, like creating and deploying releases. Please visit https://g.octopushq.com/ServerSubscription for more information.
- PASS: We've done our best to remove any unexpected database indexes.
- PASS: The version of your SQL Server satisfies Octopus Server installation requirements.
Please take the following steps to get your Octopus Server back up and running:
Step 1: Re-run the installer for the version of Octopus Server you were using just before trying this upgrade. Your data hasn't been changed and everything will go back to how it was beforehand. This will give you time to solve the problem and try the upgrade again.
Step 2: Contact [email protected] with a copy of your Octopus Server log file so we can help you upgrade successfully.
at Octopus.Core.Initialization.DatabaseUpgradeCoordinator.RunPreconditions() in C:\BuildAgent\work\eb99e602a96dd63\source\Octopus.Core\Initialization\DatabaseUpgradeCoordinator.cs:line 109
at Octopus.Core.Initialization.DatabaseUpgradeCoordinator.Upgrade(CancellationToken cancellationToken) in C:\BuildAgent\work\eb99e602a96dd63\source\Octopus.Core\Initialization\DatabaseUpgradeCoordinator.cs:line 62
at Octopus.Core.Initialization.DatabaseUpgradeCoordinatorFactory.DisposableDatabaseUpgradeCoordinatorFacade.Upgrade(CancellationToken cancellationToken) in C:\BuildAgent\work\eb99e602a96dd63\source\Octopus.Core\Initialization\DatabaseUpgradeCoordinatorFactory.cs:line 153
at Octopus.Core.Initialization.BuiltIn.DatabaseUpgradeInitializer.Initialize(IRawRelationalStore store) in C:\BuildAgent\work\eb99e602a96dd63\source\Octopus.Core\Initialization\BuiltIn\DatabaseUpgradeInitializer.cs:line 21
at Octopus.Core.Initialization.StoreInitializer.Initialize() in C:\BuildAgent\work\eb99e602a96dd63\source\Octopus.Core\Initialization\StoreInitializer.cs:line 20
at Octopus.Server.OctopusServerEngine.Start() in C:\BuildAgent\work\eb99e602a96dd63\source\Octopus.Server\OctopusServerEngine.cs:line 79
at Octopus.Server.Commands.RunCommand.Start() in C:\BuildAgent\work\eb99e602a96dd63\source\Octopus.Server\Commands\RunCommand.cs:line 79
at Octopus.Shared.Startup.AbstractCommand.Start(String[] commandLineArguments, ICommandRuntime commandRuntime, OptionSet commonOptions)
at Octopus.Shared.Startup.OctopusProgram.Start(ICommandRuntime commandRuntime)
at Octopus.Shared.Startup.WindowsServiceHost.<>c__DisplayClass2_0.<Run>b__0()
at Octopus.Shared.Startup.WindowsServiceAdapter.RunService()
at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()
More Information
Customer Ticket #1 Customer Ticket #2 Customer Ticket #3
Workaround
Use the CLI to update the licence to a complaint version
Do we know how old a license is required to create this bug? Are we talking one year ago or ten?
Another report - https://octopus.zendesk.com/agent/tickets/92943
Another report - https://octopus.zendesk.com/agent/tickets/92629
Another report - https://octopus.zendesk.com/agent/tickets/86011
Another report - https://octopus.zendesk.com/agent/tickets/84196