Network creation and Router Creation times degrade with large number of instances
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
neutron |
Expired
|
Medium
|
Unassigned |
Bug Description
We are trying to analyze why creation of routers and networks degrades when there is a large number of instances of these. Running cprofile on the L3 agent indicated that ensure_namespace function seems to degrade when a large number of namespaces are present.
Looking through the code all the namespaces are listed with the "ip netns list" command and then compared against the one that is of interest. This scales badly since with large number if instances the number of comparisons increases.
An alternate way to achieve the same result could be to check for the desired namespace ("ls /var/run/
Either method described above would have a constant time for execution, rather than the linear time as seen presently.
Thanks,
-Uday
Changed in neutron: | |
status: | New → In Progress |
Changed in neutron: | |
status: | Incomplete → In Progress |
Changed in neutron: | |
status: | Incomplete → In Progress |
tags: | added: l3-ipam-dhcp loadimpact |
Can someone comment on whether this modification can be done? Presently we have a need to create 1000s of router and network namespace instances, and ensure_namespace degrades badly since it needs to perform a very large number of comparisons.
Thanks,
-Uday