acoustic-carpenter-78188
05/25/2023, 5:51 PMIsFailurePermanent
field on the DynamicTaskStatus
struct to indicate that the failure is permanent, and therefore should not be recovered.
Type
☑︎ Bug Fix
☐ Feature
☐ Plugin
Are all requirements met?
☑︎ Code completed
☑︎ Smoke tested
☐ Unit tests added
☐ Code documentation added
☐ Any pending items have an associated Issue
Complete description
The choice to use a new flag is entirely out of backwards compatibility. Other options include:
(1) Using the ExecutionError in flyteplugins io rather than flyteidl ExecutionError: This would make retrieval of in progress dynamic task status fail when it expects a different error type on the field.
(2) Naming the flag IsRecoverable
vs `isPermanent`: This is difficult because intuition says that we should use IsRecoverable
which adheres more to the Flyte standard. The biggest issue is that dynamics treat all failures as retryable by default now, so this would change the default to be non-recoverable (ie. false
for IsRecoverable
) which changes the default behavior. It is VERY difficult to ensure there will be no regressions.
Tracking Issue
fixes flyteorg/flyte#3606
Follow-up issue
NA
flyteorg/flytepropeller
GitHub Actions: Goreleaser
GitHub Actions: Build & Push Flytepropeller Image
GitHub Actions: Bump Version
GitHub Actions: Check Go Generate / Go Generate
✅ 10 other checks have passed
10/14 successful checksacoustic-carpenter-78188
05/25/2023, 5:51 PM