From 26b98b7b51bb21b96cdc2c77443096f4b015b8e5 Mon Sep 17 00:00:00 2001 From: Oleg Bondarev Date: Thu, 11 Apr 2013 16:56:08 +0400 Subject: [PATCH] lbaas: check object state before update for pools, members, health monitors Fixes bug 1166365 Change-Id: I027bb1465ab08a643a02bddea30db82652be55ed --- quantum/db/loadbalancer/loadbalancer_db.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/quantum/db/loadbalancer/loadbalancer_db.py b/quantum/db/loadbalancer/loadbalancer_db.py index ee504059aa9..9f266c04248 100644 --- a/quantum/db/loadbalancer/loadbalancer_db.py +++ b/quantum/db/loadbalancer/loadbalancer_db.py @@ -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)