Skip to content

Commit

Permalink
[schema] Let time to send zookeeper heartbeat
Browse files Browse the repository at this point in the history
During the schema initialization phase, there is no context switching
that permit to send zookeeper heartbeat.

Closes-Bug: #15592681
Change-Id: I2a9806440676f9c6709b12e5903a62e9cabc7fad
(cherry picked from commit a915d24)
  • Loading branch information
Édouard Thuleau committed Mar 18, 2016
1 parent 2de96da commit bce5bae
Showing 1 changed file with 34 additions and 9 deletions.
43 changes: 34 additions & 9 deletions src/config/schema-transformer/to_bgp.py
Expand Up @@ -2649,30 +2649,55 @@ def reinit(self):
acl.uuid, str(e))
# end for acl

gevent.sleep(0.001)
for sg in sg_list:
_SLEEP_TIMEOUT=0.001
start_time = time.time()
for index, sg in enumerate(sg_list):
SecurityGroupST.locate(sg.get_fq_name_str(), sg, sg_acl_dict)
gevent.sleep(0.001)
if not index % 100:
gevent.sleep(_SLEEP_TIMEOUT)
elapsed_time = time.time() - start_time
_sandesh._logger.info("Initialized %d security groups in %.3f", len(sg_list), elapsed_time)

rt_list = _vnc_lib.route_targets_list()['route-targets']
for rt in rt_list:
start_time = time.time()
for index, rt in enumerate(rt_list):
rt_name = ':'.join(rt['fq_name'])
RouteTargetST.locate(rt_name, RouteTarget(rt_name))
for vn in vn_list:
if not index % 100:
gevent.sleep(_SLEEP_TIMEOUT)
elapsed_time = time.time() - start_time
_sandesh._logger.info("Initialized %d route targets in %.3f", len(rt_list), elapsed_time)

start_time = time.time()
for index, vn in enumerate(vn_list):
VirtualNetworkST.locate(vn.get_fq_name_str(), vn, vn_acl_dict,
ri_dict)
gevent.sleep(0.001)
if not index % 100:
gevent.sleep(_SLEEP_TIMEOUT)
elapsed_time = time.time() - start_time
_sandesh._logger.info("Initialized %d virtual networks in %.3f", len(vn_list), elapsed_time)

vmi_list = _vnc_lib.virtual_machine_interfaces_list(detail=True)
for vmi in vmi_list:
start_time = time.time()
for index, vmi in enumerate(vmi_list):
VirtualMachineInterfaceST.locate(vmi.get_fq_name_str(), vmi)
if not index % 100:
gevent.sleep(_SLEEP_TIMEOUT)
elapsed_time = time.time() - start_time
_sandesh._logger.info("Initialized %d virtual machine interfaces in %.3f", len(vmi_list), elapsed_time)

gevent.sleep(0.001)
vm_list = _vnc_lib.virtual_machines_list(detail=True)
for vm in vm_list:
start_time = time.time()
for index, vm in enumerate(vm_list):
si_refs = vm.get_service_instance_refs()
if si_refs:
si_fq_name_str = ':'.join(si_refs[0]['to'])
VirtualMachineST.locate(vm.get_fq_name_str(),
si_fq_name_str)
if not index % 100:
gevent.sleep(_SLEEP_TIMEOUT)
elapsed_time = time.time() - start_time
_sandesh._logger.info("Initialized %d virtual machines in %.3f", len(vm_list), elapsed_time)
# end reinit

def cleanup(self):
Expand Down

0 comments on commit bce5bae

Please sign in to comment.