← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1245888] Re: Removing health monitor associated with a pool does not reflect the change to Radware vDirect system

 

the function
 def delete_health_monitor(...) is no longer exists in plugin.py -- invalid

** Changed in: neutron
       Status: Triaged => Invalid

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1245888

Title:
  Removing health monitor associated with a pool does not reflect the
  change to Radware vDirect system

Status in OpenStack Neutron (virtual network service):
  Invalid

Bug description:
  Radware is the LBaaS provider.
  Having health monitor associated with a pool.
  Remove the health monitor.
  Removing the health monitor succeeds, but the change is not reflected to Radware vDirect system.

  I know that removing HM which is associated to a pool might be forbidden via the Horizon,
  but technically, it's possible. 
  HM should be removed and all pools having the association to it should be disconnected.

  The bug in the lbaas plugin
  services/loadbalancer/plugin.py 
  Function delete_health_monitor()
  It should change the HM status to PENDING_DELETE before deleting the pool-hm association .

  Function after fix:
      def delete_health_monitor(self, context, id):
          with context.session.begin(subtransactions=True):
              hm = self.get_health_monitor(context, id)
              qry = context.session.query(
                  ldb.PoolMonitorAssociation
              ).filter_by(monitor_id=id).join(ldb.Pool)
              for assoc in qry:
                  driver = self._get_driver_for_pool(context, assoc['pool_id'])

                  self.update_pool_health_monitor(context, id, assoc['pool_id'],
                                                  constants.PENDING_DELETE)

                  driver.delete_pool_health_monitor(context,
                                                    hm,
                                                    assoc['pool_id'])
          super(LoadBalancerPlugin, self).delete_health_monitor(context, id)

  I know that health monitor design might be reviewed and changed during Icehouse.
  If so, this issue might be not relevant

To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1245888/+subscriptions