A rollout superseded before its version becomes Current or Ramping stays Inactive forever.
The controller scales its Deployment to zero, but the controller only cleans up the Temporal-side WorkerDeploymentVersion and the k8s-side Deployment for Drained and NotRegistered versions, not Inactive.
We should add cleanup for Inactive versions but only after checking with the CountWorkflow visibility query that there are no open pinned workflow executions targeting that specific build ID (which could be the case if a user executed the workflow with versioning override pinning to that build ID.
OP: @mitchross
A rollout superseded before its version becomes Current or Ramping stays Inactive forever.
The controller scales its Deployment to zero, but the controller only cleans up the Temporal-side WorkerDeploymentVersion and the k8s-side Deployment for Drained and NotRegistered versions, not Inactive.
We should add cleanup for Inactive versions but only after checking with the CountWorkflow visibility query that there are no open pinned workflow executions targeting that specific build ID (which could be the case if a user executed the workflow with versioning override pinning to that build ID.
OP: @mitchross