← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1487357] Re: No PoolInUse Check when creating VIP

 

Submitter triaged their own bug. :-)

** Changed in: neutron
       Status: New => 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/1487357

Title:
  No PoolInUse Check when creating VIP

Status in neutron:
  Invalid

Bug description:
  From the lbaasv1 api, there seems to me that many vips could map to the same pool. After reading the code, it turned out to be not. Deducing from below code snippet:
  class LoadBalancerPluginDb(loadbalancer.LoadBalancerPluginBase,
                             base_db.CommonDbMixin):
      ...
      def create_vip(self, context, vip):
          ...
          if v['pool_id']:
              # fetching pool again
              pool = self._get_resource(context, Pool, v['pool_id'])
              # (NOTE): we rely on the fact that pool didn't change between
              # above block and here
              vip_db['pool_id'] = v['pool_id']
              pool['vip_id'] = vip_db['id']
              # explicitly flush changes as we're outside any transaction
              context.session.flush()
          ...
      ...
  (neutron_lbaas/db/loadbalancer/loadbalancer_db.py)
  the relationship between vip and pool should be 1:1. If this is the case, there should have checked whether pool[vip_id] is null or not and throw a PoolInUse exception if no null value present.
  Am I miss anything?
  Thanks,

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


References