nova-compute hangs while executing a blocking call to librbd
Affects | Status | Importance | Assigned to | Milestone | ||
---|---|---|---|---|---|---|
Mirantis OpenStack | Status tracked in 10.0.x | |||||
10.0.x |
Fix Released
|
High
|
Roman Podoliaka | |||
9.x |
Fix Released
|
High
|
Roman Podoliaka |
Bug Description
Upstream bug: https:/
While executing a call to librbd nova-compute may hang for a while and eventually go down in nova service-list output.
strace'ing shows that a process is stuck on acquiring a mutex:
root@node-153:~# strace -p 16675
Process 16675 attached
futex(0x7fff084
gdb allows to see the traceback:
http://
^ which basically means calls to librbd (C library) are not monkey-patched and do not allow to switch the execution context to another green thread in a eventlet-based process.
To avoid blocking of the whole nova-compute process on calls to librbd we should wrap them with tpool.execute() (http://
tags: | added: mos-nova |
tags: |
added: area-nova removed: mos-nova |
Changed in mos: | |
assignee: | nobody → Roman Podoliaka (rpodolyaka) |
milestone: | none → 10.0 |
status: | New → Confirmed |
importance: | Undecided → High |
description: | updated |
description: | updated |
description: | updated |
Fixed in https:/ /review. fuel-infra. org/#/c/ 26101/
Fixed in upstream: https:/ /review. openstack. org/#/q/ I743ab372332eb6 56258a476ae91f5 e8fd2cbdc99, n,z