Merge "Check for existence instead of fetching the whole net object"
This commit is contained in:
commit
1740524999
@ -266,6 +266,11 @@ class DbBasePluginCommon(object):
|
|||||||
raise exceptions.NetworkNotFound(net_id=id)
|
raise exceptions.NetworkNotFound(net_id=id)
|
||||||
return network
|
return network
|
||||||
|
|
||||||
|
def _network_exists(self, context, network_id):
|
||||||
|
query = model_query.query_with_hooks(
|
||||||
|
context, models_v2.Network, field='id')
|
||||||
|
return query.filter(models_v2.Network.id == network_id).first()
|
||||||
|
|
||||||
def _get_subnet_object(self, context, id):
|
def _get_subnet_object(self, context, id):
|
||||||
subnet = subnet_obj.Subnet.get_object(context, id=id)
|
subnet = subnet_obj.Subnet.get_object(context, id=id)
|
||||||
if not subnet:
|
if not subnet:
|
||||||
|
@ -1309,7 +1309,7 @@ class NeutronDbPluginV2(db_base_plugin_common.DbBasePluginCommon,
|
|||||||
if not validators.is_attr_set(network_id):
|
if not validators.is_attr_set(network_id):
|
||||||
msg = _("network_id must be specified.")
|
msg = _("network_id must be specified.")
|
||||||
raise exc.InvalidInput(error_message=msg)
|
raise exc.InvalidInput(error_message=msg)
|
||||||
if not network_obj.Network.objects_exist(context, id=network_id):
|
if not self._network_exists(context, network_id):
|
||||||
raise exc.NetworkNotFound(net_id=network_id)
|
raise exc.NetworkNotFound(net_id=network_id)
|
||||||
|
|
||||||
subnetpool = subnetpool_obj.SubnetPool.get_object(context,
|
subnetpool = subnetpool_obj.SubnetPool.get_object(context,
|
||||||
@ -1419,7 +1419,8 @@ class NeutronDbPluginV2(db_base_plugin_common.DbBasePluginCommon,
|
|||||||
port_data['mac_address'] = p.get('mac_address')
|
port_data['mac_address'] = p.get('mac_address')
|
||||||
with db_api.CONTEXT_WRITER.using(context):
|
with db_api.CONTEXT_WRITER.using(context):
|
||||||
# Ensure that the network exists.
|
# Ensure that the network exists.
|
||||||
self._get_network(context, network_id)
|
if not self._network_exists(context, network_id):
|
||||||
|
raise exc.NetworkNotFound(net_id=network_id)
|
||||||
|
|
||||||
# Create the port
|
# Create the port
|
||||||
db_port = self._create_db_port_obj(context, port_data)
|
db_port = self._create_db_port_obj(context, port_data)
|
||||||
|
Loading…
Reference in New Issue
Block a user