NodeLocked log messages causing random test failures
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Ironic |
Fix Released
|
High
|
Dmitry Tantsur |
Bug Description
When the ironic-api service returns NodeLocked to the client, the client should merely retry the request -- and the nova.virt.ironic driver does the proper error handling for this, and everything is fine. Except that ir-api records this error in the log file, which is interpreted as a failure by tempest. It appears in the test run's output console.html file as follows.
http://
...
2014-05-16 15:43:16.719 | Log File Has Errors: ir-api
2014-05-16 15:43:16.719 | *** Not Whitelisted *** 2014-05-16 15:40:12.654 21242 ERROR wsme.api [-] Server-side error: "Node ab167bb8-
...
2014-05-16 15:43:16.970 | Logs have errors
2014-05-16 15:43:16.971 | Log: ir-api not allowed to have ERRORS or TRACES
2014-05-16 15:43:16.977 | ERROR: the main setup script run by this job failed - exit code: 1
2014-05-16 15:43:16.977 | please look at the relevant log files to determine the root cause
In fact, this condition is not an error at all -- we merely need to tell the client to retry, and nothing should be logged.
Changed in ironic: | |
status: | New → Triaged |
importance: | Undecided → Critical |
importance: | Critical → High |
milestone: | none → juno-1 |
Changed in ironic: | |
assignee: | nobody → Dmitry "Divius" Tantsur (divius) |
Changed in ironic: | |
status: | Fix Committed → Fix Released |
Changed in ironic: | |
milestone: | juno-1 → 2014.2 |
Thinking that 503 is not the best code for the situation. 503 means server experiences troubles, here it actually does not - it's just conflicting access to a resource. Hence I suggest "409 conflict".