]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commitdiff
lbaas: check object state before update for pools, members, health monitors
authorOleg Bondarev <obondarev@mirantis.com>
Thu, 11 Apr 2013 12:56:08 +0000 (16:56 +0400)
committerGerrit Code Review <review@openstack.org>
Tue, 23 Apr 2013 06:54:18 +0000 (06:54 +0000)
Fixes bug 1166365

Change-Id: I027bb1465ab08a643a02bddea30db82652be55ed

quantum/db/loadbalancer/loadbalancer_db.py

index ee504059aa915b22341b6dbc5c0b614bcc2d913b..9f266c042480d9cd1f259142149503c5ad8816fd 100644 (file)
@@ -547,6 +547,7 @@ class LoadBalancerPluginDb(LoadBalancerPluginBase):
 
         with context.session.begin(subtransactions=True):
             pool_db = self._get_resource(context, Pool, id)
+            self.assert_modification_allowed(pool_db)
             if p:
                 pool_db.update(p)
 
@@ -680,6 +681,7 @@ class LoadBalancerPluginDb(LoadBalancerPluginBase):
         v = member['member']
         with context.session.begin(subtransactions=True):
             member_db = self._get_resource(context, Member, id)
+            self.assert_modification_allowed(member_db)
             if v:
                 member_db.update(v)
 
@@ -740,6 +742,7 @@ class LoadBalancerPluginDb(LoadBalancerPluginBase):
         v = health_monitor['health_monitor']
         with context.session.begin(subtransactions=True):
             monitor_db = self._get_resource(context, HealthMonitor, id)
+            self.assert_modification_allowed(monitor_db)
             if v:
                 monitor_db.update(v)
         return self._make_health_monitor_dict(monitor_db)