Concurrent subnet allocations from pool can overlap
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Group Based Policy |
Fix Released
|
High
|
Robert Kukura |
Bug Description
When subnets are concurrently allocated from an L3 Policy's IP pool, such as when creating a Policy Target Group with the resource_mapping driver or creating an L2 Policy with the apic driver, the same subnet is sometimes allocated more than once. With the resouce_mapping driver, this results in an InternalServerError being returned to the client and a traceback in the server log similar to:
2015-09-25 14:01:41.515 ERROR gbpservice.
2015-09-25 14:01:41.515 26468 TRACE gbpservice.
2015-09-25 14:01:41.515 26468 TRACE gbpservice.
2015-09-25 14:01:41.515 26468 TRACE gbpservice.
2015-09-25 14:01:41.515 26468 TRACE gbpservice.
2015-09-25 14:01:41.515 26468 TRACE gbpservice.
2015-09-25 14:01:41.515 26468 TRACE gbpservice.
2015-09-25 14:01:41.515 26468 TRACE gbpservice.
2015-09-25 14:01:41.515 26468 TRACE gbpservice.
2015-09-25 14:01:41.515 26468 TRACE gbpservice.
2015-09-25 14:01:41.515 26468 TRACE gbpservice.
2015-09-25 14:01:41.515 26468 TRACE gbpservice.
2015-09-25 14:01:41.515 26468 TRACE gbpservice.
The subnet allocation algorithm needs to add the newly created subnet to the router within its loop and, if BadRequest is raised, delete that subnet and try the next available CIDR, until a non-overlapping subnet CIDR is found.
Changed in group-based-policy: | |
assignee: | nobody → Robert Kukura (rkukura) |
importance: | Undecided → High |
Changed in group-based-policy: | |
milestone: | none → liberty-1 |
status: | New → Confirmed |
tags: | added: ccs-seen |
Changed in group-based-policy: | |
status: | Fix Committed → Fix Released |
Fix proposed to branch: master /review. openstack. org/232274
Review: https:/