Cinder service.py is out of sync from incubator that causes threads hang all the time.
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Cinder |
Fix Released
|
High
|
Jay Bryant |
Bug Description
In latest Cinder component, we used ThreadGroup in cinder/
This is the code piece of threadgroup.py:
def add_timer(self, interval, callback, initial_delay=None,
pulse = loopingcall.
#What we did is create a manager:
from cinder.
class MyManager(
....
def __init__(self):
#add a timer
def test_periodic_
def test():
The result is "print" printed twice but after that the thread is hang there, no log any more. We also tried open the backdoor_port in cinder.conf and tried to check the GreenThread status but failed to telnet on it, seems the thread is not in response.
The codes work on previous release but failed in latest cinder component, hope the members who has insight can check on this.
summary: |
- Cinder service.py is out of date from incubator that causes threads hang + Cinder service.py is out of sync from incubator that causes threads hang all the time. |
Changed in cinder: | |
status: | Fix Committed → Fix Released |
Changed in cinder: | |
milestone: | juno-rc1 → 2014.2 |
This should be a defect from cinder. openstack. common. service. py, it should use eventlet's event instead of threading in service.py, here is the method to fix this in incubator(which is parent for nova and cinder component): https:/ /github. com/openstack/ oslo-incubator/ commit/ 1e7007824374842 bc8108dff5e5e26 94e12932b2
Note that the nova has merged the latest source while cinder doesn't, that's reason why causes the cinder-volume hang there all the time.