Merge "[apic-mapping] Ignore FlushError in create PTG" into stable/mitaka

This commit is contained in:
Jenkins 2017-05-27 16:41:34 +00:00 committed by Gerrit Code Review
commit 82f52fecdb
1 changed files with 7 additions and 1 deletions

View File

@ -51,6 +51,7 @@ from oslo_log import log as logging
import oslo_messaging
from oslo_serialization import jsonutils
import sqlalchemy as sa
from sqlalchemy.orm import exc as orm_exc
from gbpservice.neutron.db.grouppolicy.extensions import apic_reuse_bd_db
from gbpservice.neutron.db.grouppolicy import group_policy_mapping_db as gpdb
@ -2751,7 +2752,12 @@ class ApicMappingDriver(api.ResourceMappingDriver,
ApicMappingDriver, self)._use_implicit_subnet(
context, subnet_specifics={'name': name},
is_proxy=is_proxy)
context.add_subnets(subs - set(context.current['subnets']))
try:
context.add_subnets(subs - set(context.current['subnets']))
except orm_exc.FlushError:
for subnet in added:
self._delete_subnet(context._plugin_context, subnet['id'])
return
if added:
l3p_id = l2p['l3_policy_id']
l3p = context._plugin.get_l3_policy(context._plugin_context,