Neutron subnet delete and recreate inconsistancy

Bug #1332645 reported by Foucault de Bonneval
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Juniper Openstack
Status tracked in Trunk
R3.2
Fix Committed
Undecided
Hampapur Ajay
R4.0
Fix Committed
Undecided
Hampapur Ajay
Trunk
Fix Committed
Undecided
Hampapur Ajay
OpenContrail
Fix Committed
Undecided
Hampapur Ajay

Bug Description

When I do :
- neutron net create
- neutron subnet create
- neutron subnet delete
- neutron subnet create (with same parameters than the first one)

I get differents answers (the right one or http 404) depending on which neutron server I reach.

Tags: neutronapi
Changed in opencontrail:
assignee: nobody → Hampapur Ajay (hajay)
Revision history for this message
Vedamurthy Joshi (vedujoshi) wrote :

On 1.06-50, the issue is fixed.

Validated with the attached script.

Revision history for this message
Vedamurthy Joshi (vedujoshi) wrote :

Attaching the script used to validate

Revision history for this message
Sachin Bansal (sbansal) wrote :
Changed in opencontrail:
status: New → Fix Committed
tags: added: neutronapi
Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : [Review update] master

Review in progress for https://review.opencontrail.org/29561
Submitter: yacine (<email address hidden>)

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : A change has been merged

Reviewed: https://review.opencontrail.org/29561
Committed: http://github.com/Juniper/contrail-controller/commit/f3056c8663be341484468843888ce1646bd5da5d
Submitter: Zuul (<email address hidden>)
Branch: master

commit f3056c8663be341484468843888ce1646bd5da5d
Author: Yacine Saibi <email address hidden>
Date: Mon Mar 13 16:13:19 2017 +0100

Patch for IP pool issues:

The problem is when we have more than one api-server, when a subnet is
deleted, the other api-servers keep the subnet allocator in their
subnet_allocator dict (in vnc_db.py). So when we create a subnet with
the same parameters (net, name, cidr,...) when we attach a port to him,
the allocated api is not always in the good range, depending on which
api-server responded to the create-port request.

- net_(delete/update)_notify methods modified,to update dicts on each nodes.

- ipam_(delete/update)_notify modified too.

- new parameter added (notify) now, "IndexAllocator.delete_all"
is done only from "*_req" methods.

- unittests updated to match and test new behavior

Change-Id: I98f095aeca37290c98bf12fb2be57e74b66efa0a
Closes-Bug: #1332645
Closes-Bug: #1365824

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : [Review update] R4.0

Review in progress for https://review.opencontrail.org/32511
Submitter: yacine (<email address hidden>)

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : [Review update] R3.2

Review in progress for https://review.opencontrail.org/32512
Submitter: yacine (<email address hidden>)

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : A change has been merged

Reviewed: https://review.opencontrail.org/32511
Committed: http://github.com/Juniper/contrail-controller/commit/e53ad2963b0db706799c15d9c61db9be9a2a50df
Submitter: Zuul (<email address hidden>)
Branch: R4.0

commit e53ad2963b0db706799c15d9c61db9be9a2a50df
Author: Yacine Saibi <email address hidden>
Date: Mon Mar 13 16:13:19 2017 +0100

Patch for IP pool issues:

The problem is when we have more than one api-server, when a subnet is
deleted, the other api-servers keep the subnet allocator in their
subnet_allocator dict (in vnc_db.py). So when we create a subnet with
the same parameters (net, name, cidr,...) when we attach a port to him,
the allocated api is not always in the good range, depending on which
api-server responded to the create-port request.

- net_(delete/update)_notify methods modified,to update dicts on each nodes.

- ipam_(delete/update)_notify modified too.

- new parameter added (notify) now, "IndexAllocator.delete_all"
is done only from "*_req" methods.

- unittests updated to match and test new behavior

Change-Id: I98f095aeca37290c98bf12fb2be57e74b66efa0a
Closes-Bug: #1332645
Closes-Bug: #1365824
(cherry picked from commit f3056c8663be341484468843888ce1646bd5da5d)

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote :

Reviewed: https://review.opencontrail.org/32512
Committed: http://github.com/Juniper/contrail-controller/commit/bfa269893808db5d58b1a0d539e720a321ee32e7
Submitter: Zuul (<email address hidden>)
Branch: R3.2

commit bfa269893808db5d58b1a0d539e720a321ee32e7
Author: Yacine Saibi <email address hidden>
Date: Mon Mar 13 16:13:19 2017 +0100

Patch for IP pool issues:

The problem is when we have more than one api-server, when a subnet is
deleted, the other api-servers keep the subnet allocator in their
subnet_allocator dict (in vnc_db.py). So when we create a subnet with
the same parameters (net, name, cidr,...) when we attach a port to him,
the allocated api is not always in the good range, depending on which
api-server responded to the create-port request.

- net_(delete/update)_notify methods modified,to update dicts on each nodes.

- ipam_(delete/update)_notify modified too.

- new parameter added (notify) now, "IndexAllocator.delete_all"
is done only from "*_req" methods.

- unittests updated to match and test new behavior

Change-Id: I98f095aeca37290c98bf12fb2be57e74b66efa0a
Closes-Bug: #1332645
Closes-Bug: #1365824
(cherry picked from commit f3056c8663be341484468843888ce1646bd5da5d)

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Bug attachments

Remote bug watches

Bug watches keep track of this bug in other bug trackers.