lbaas: member create shouldnt walk through all the members across all pools

Bug #1501546 reported by Senthilnathan Murugappan
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Juniper Openstack
Status tracked in Trunk
R2.20
Won't Fix
High
Unassigned
Trunk
New
High
Rudra Rugge

Bug Description

Member create on a pool walks through all the members across all pools which leads to neutron haproxy timeout when there are about 400 odd members across 150 pools.

Believe this happens as part of the quota check (though i had set quota_members to -1)

> /usr/lib/python2.7/dist-packages/neutron/quota.py(324)_count_resource()
-> obj_list = obj_getter(context, filters={'tenant_id': [tenant_id]})
(Pdb) list
319 try:
320 obj_count_getter = getattr(plugin, count_getter_name)
321 return obj_count_getter(context, filters={'tenant_id': [tenant_id]})
322 except (NotImplementedError, AttributeError):
323 obj_getter = getattr(plugin, "get_%s" % resources)
324 -> obj_list = obj_getter(context, filters={'tenant_id': [tenant_id]})
325 return len(obj_list) if obj_list else 0
326
327
328 def register_resources_from_config():
329 resources = []
(Pdb) down
> /usr/lib/python2.7/dist-packages/neutron_plugin_contrail/plugins/opencontrail/loadbalancer/loadbalancer_db.py(242)get_members()
-> return self._member_manager.get_collection(context, filters, fields)
(Pdb) list
237
238 pool.del_loadbalancer_healthmonitor(monitor)
239 self._api.loadbalancer_pool_update(pool)
240
241 def get_members(self, context, filters=None, fields=None):
242 -> return self._member_manager.get_collection(context, filters, fields)
243
244 def get_member(self, context, id, fields=None):
245 return self._member_manager.get_resource(context, id, fields)
246
247 def create_member(self, context, member):
(Pdb)

Tags: lbaas scale
tags: added: scale
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.