add greenthread.sleep to increase yields

This is a stopgap Havana release.  Add eventlet greenthread.sleep to
increase thread yields.

Partially fixes: 1230407
Partially fixes: 1224001

Change-Id: I18953cf8e457ebb33780817582b4788fb5ed6f73
This commit is contained in:
Mark McClain 2013-10-02 16:51:33 -04:00
parent 7da3d24f8a
commit 21bf6f7e49
1 changed files with 6 additions and 0 deletions

View File

@ -15,6 +15,8 @@
# License for the specific language governing permissions and limitations
# under the License.
from eventlet import greenthread
from oslo.config import cfg
import sqlalchemy as sa
from sqlalchemy.orm import exc
@ -146,14 +148,18 @@ class AgentDbMixin(ext_agent.AgentPluginBase):
res['heartbeat_timestamp'] = current_time
if agent.get('start_flag'):
res['started_at'] = current_time
greenthread.sleep(0)
agent_db.update(res)
except ext_agent.AgentNotFoundByTypeHost:
greenthread.sleep(0)
res['created_at'] = current_time
res['started_at'] = current_time
res['heartbeat_timestamp'] = current_time
res['admin_state_up'] = True
agent_db = Agent(**res)
greenthread.sleep(0)
context.session.add(agent_db)
greenthread.sleep(0)
class AgentExtRpcCallback(object):