Asynchronous errors can only be reported if instance is in ERROR
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Won't Fix
|
Medium
|
Jim Jiang |
Bug Description
The API currently states that asynchronous errors can only be reported if the instance is in ERROR state. Nova currently implements that too.
However, this implies that all problems that occur are fatal.
One instance where an error may not necessarily be fatal is when communicating with the agent. During a spawn of a new instance, the agent is used (in the case of the xenapi driver at least) to set the root password, possibly inject files and set the network config.
Often these problems leave the instance running, but maybe in a partially configured state. Moving the instance to ERROR should shut off the instance, leaving it unavailable to troubleshoot. Logging an asynchronous error doesn't make it visible to the user unless the instance is in ERROR.
Right now the xenapi driver just logs agent failures and continues. This can leave the user confused as to why the instance doesn't appear to be configured correctly since there is no user accessible way to obtain non-fatal errors.
Changed in nova: | |
status: | New → Confirmed |
importance: | Undecided → Medium |
Changed in nova: | |
assignee: | nobody → 蒋闻天 (jiangwt100) |
I definitely agree with the this (it's something that has come up in my usage of the API several times) but I don't know how best to fix it. The API defines this behavior you document as a bug (which I would agree with), so maybe we have to add an extension and expose async faults multiple ways?