akanda-rug hot-plugging failures can lead to an endless state machine loop
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Astara |
Fix Released
|
High
|
Ryan Petrello | ||
akanda |
Fix Released
|
High
|
Ryan Petrello |
Bug Description
It's possible for akanda-rug's state machine to fall into an endless "hot-plug of death" loop, e.g.,
ConfigureVM -> Replug -> ConfigureVM -> ReplugVM -> etc...
...if the `nova interface-attach` or `nova interface-detach` calls fail for any reason. In certain scenarios, this causes all of the akanda-rug worker processes to be stuck in this busy loop, thus causing the rug to completely stop processing events. Below is a sample log output we observed that exhibits this behavior:
2015-06-18 17:39:30:
2015-06-18 17:39:30:
2015-06-18 17:39:30:
2015-06-18 17:39:30:
2015-06-18 17:39:30:
2015-06-18 17:39:30:
2015-06-18 17:39:30:
2015-06-18 17:39:30:
2015-06-18 17:39:30:
2015-06-18 17:39:31:
2015-06-18 17:39:31:
Traceback (most recent call last):
File "akanda/
worker_context,
File "akanda/
self.
File "akanda/
instance.
File "novaclient/
return self.manager.
File "novaclient/
body, 'interfaceAttac
...
BadRequest: Port <port-uuid> is still in use. (HTTP 400) (Request-ID: <redacted>)
...and then the state machine returns to ConfigureVM and loops with this exception endlessly.
Changed in akanda: | |
status: | New → In Progress |
Changed in akanda: | |
importance: | Undecided → High |
milestone: | none → liberty-1 |
Changed in akanda: | |
status: | In Progress → Fix Committed |
Changed in akanda: | |
status: | Fix Committed → Fix Released |
Changed in astara: | |
milestone: | none → 7.0.0 |
Changed in akanda: | |
milestone: | liberty-1 → 7.0.0 |
Changed in astara: | |
assignee: | nobody → Ryan Petrello (ryan-petrello) |
importance: | Undecided → High |
status: | New → Fix Released |
Also, I have a working patchset for this bug forthcoming.