Join GitHub today
api: Use TaskStatus Err field for non-terminal errors #2287
There are some cases when a task can't advance from a particular state because preconditions are not met. For example, if no nodes meet its constraints, it will not advance to "assigned".
Currently, we put a note about this in the
Expand the scope of
Ideally we would also use this to surface IP allocation failures that block a task in "new", but the current design of the allocator would loop if we updated a task on failure. This might be something for a followup.
@@ Coverage Diff @@ ## master #2287 +/- ## ========================================= + Coverage 61.06% 61.1% +0.03% ========================================= Files 128 128 Lines 20532 20538 +6 ========================================= + Hits 12538 12549 +11 + Misses 6611 6602 -9 - Partials 1383 1387 +4
referenced this pull request
Jun 27, 2017
The use case that is being described here is exactly what the message field is designed for:
Do we need something to indicate that a task is stalled?
In this case, tasks are stalled indefinitely - for instance not all constraints were met or we reached network exhaustion.
The operator needs to have this information surfaced somehow since state convergence cannot go forward until action is taken.
Long story short, this needs to be blinking red in some ops' dashboard.
@aluzzardi I get what you are trying to do, but I am asking if there is a better way to do it. Overloading the
If a task is stalled, do we have an indicator of that state? For example, a boolean field, indicating that the task is stalled and to check the message field would make sense here.