ListOperations does not list failed operations
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Canonical Juju |
Fix Released
|
High
|
Ian Booth |
Bug Description
Using Juju 2.9 when an operation fails to be executed it does not appear in the `ListOperations` API call even though it's assigned an operation id. I would have expected that all operations are shown.
{
"type": "Action",
"request": "EnqueueOperation",
"version": 6,
"params": {
"actions": [
{
"name": "create-pool",
"receiver": "unit-ceph-mon-0",
"name": "new-pool",
}
}
]
},
"request-id": 2
}
{
"request-id": 2,
"response": {
"operation": "operation-3",
"actions": [
{
"error": {
"code": ""
},
"result": ""
}
]
}
}
{
"type": "Action",
"request": "ListOperations",
"version": 6,
"params": {},
"request-id": 2
}
Changed in juju: | |
status: | In Progress → Fix Committed |
Changed in juju: | |
status: | Fix Committed → Fix Released |
When validation of action parameters fails, no action is queued up to run.
The list-operations command works by gathering all actions and grouping them according to their parent operation. This is because the overall operation status can depend on the status of the individual actions. So if no action got queued, the current logic will not show that operation.
This does need a tweak to improve the behaviour.