Merge "Improve Subnet delete performance" into stable/train
This commit is contained in:
commit
5d04a7e008
|
@ -1076,7 +1076,8 @@ class NeutronDbPluginV2(db_base_plugin_common.DbBasePluginCommon,
|
|||
with db_api.exc_to_retry(sql_exc.IntegrityError), \
|
||||
db_api.CONTEXT_WRITER.using(context):
|
||||
registry.notify(resources.SUBNET, events.PRECOMMIT_DELETE,
|
||||
self, context=context, subnet_id=subnet.id)
|
||||
self, context=context, subnet_id=subnet.id,
|
||||
subnet_obj=subnet)
|
||||
subnet.delete()
|
||||
# Delete related ipam subnet manually,
|
||||
# since there is no FK relationship
|
||||
|
|
|
@ -1318,11 +1318,11 @@ class Ml2Plugin(db_base_plugin_v2.NeutronDbPluginV2,
|
|||
@registry.receives(resources.SUBNET, [events.PRECOMMIT_DELETE], priority=0)
|
||||
def _subnet_delete_precommit_handler(self, rtype, event, trigger,
|
||||
context, subnet_id, **kwargs):
|
||||
subnet_obj = self._get_subnet_object(context, subnet_id)
|
||||
subnet_obj = (kwargs.get('subnet_obj') or
|
||||
self._get_subnet_object(context, subnet_id))
|
||||
subnet = self._make_subnet_dict(subnet_obj, context=context)
|
||||
network = self.get_network(context, subnet['network_id'])
|
||||
mech_context = driver_context.SubnetContext(self, context,
|
||||
subnet, network)
|
||||
subnet, network=None)
|
||||
# TODO(kevinbenton): move this mech context into something like
|
||||
# a 'delete context' so it's not polluting the real context object
|
||||
setattr(context, '_mech_context', mech_context)
|
||||
|
|
Loading…
Reference in New Issue