Skip to content

[Feature Request] Rollback mode #126

@drewhoskins-temporal

Description

@drewhoskins-temporal

Is your feature request related to a problem? Please describe.

For users who use ramping.
Having upgraded from v1 to v2 and set v2 to current, some users would want to instantly roll back to v1 if they discover an issue.

Can allow users to configure a rollout strategy for rollbacks?

Describe the solution you'd like

Additional context

Currently there is only a rollout strategy.

Could do:

  • Check if version is in DeprecatedVersions (still in sunset) and that version was previously a CurrentVersion
    • Temporal server provides LastDeactivationTime and LastActivationTime but those are not enough because they include if the version was only ramping. Check LastCurrentTime != nil to confirm that it was nil.
  • If still in sunset, could automatically set to AllAtOnce.
    • No need to intertwine these.
  • Do we want to provide a parameter such as "fastRollbackAgeLimit" or just default to 24h?
    • 1 vote for default to 24h
    • Idea here is that a much older version is more likely to be very different from what the running workflows expect.
  • Do we want to only support rolling one version back?
    • We can add a limit like this if requested. To start with, any previously-Current version within default of 24h age is eligible for #fastrollback

Metadata

Metadata

Assignees

Labels

crd-changeRequires a change to the custom resource definitionsenhancementNew feature or request

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions