]> review.fuel-infra Code Review - openstack-build/cinder-build.git/commit
Fix block eventlet threads on rbd calls
authorIvan Kolodyazhny <e0ne@e0ne.info>
Wed, 1 Jul 2015 18:54:23 +0000 (21:54 +0300)
committerIvan Kolodyazhny <e0ne@e0ne.info>
Wed, 1 Jul 2015 18:54:23 +0000 (21:54 +0300)
commit1bbbd4666ae73abd0cbc045a19b27c578a740157
tree5bad6ea87c5588a8cb3ceb7b667d7d66d46ce3ef
parent6b93625a3d7e3085bab0246ae4d0fb46b6af7e98
Fix block eventlet threads on rbd calls

Commit Ibaf43858d60e1320c339f2523b5c09c7f7c7f91e caused new problem with
cross thread communication. According to Python documentation, code can
lead to a deadlock if the spawned thread directly or indirectly attempts
to import a module. python-rados spawns new thread to connect to
cluster. So I removed new spawning new thread to connect to rados. All
long-running operations calls whith python-rbd are still implemented in
native Python threads to block eventlet loop.

Change-Id: Ic9971254102914080383b63cd2807e36213dd6eb
Closes-Bug: #1401335
cinder/volume/drivers/rbd.py