Incorrect assertion in BgpXmppChannel::MembershipResponseHandler

Bug #1434383 reported by Nischal Sheth
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Juniper Openstack
Status tracked in Trunk
R1.1
In Progress
High
Nischal Sheth
R2.0
Fix Committed
High
Nischal Sheth
R2.1
Fix Released
High
Nischal Sheth
Trunk
Fix Released
High
Nischal Sheth

Bug Description

In BgpXmppChannel::MembershipResponseHandler when processing the response
for an unsubscribe, there's an assertion that the defer queue for the VRF is empty.

    if (state.pending_req == UNSUBSCRIBE) {
        assert(!defer_q_.count(vrf_n_table));
        return true;
    } else if (state.pending_req == SUBSCRIBE) {

If the current incarnation of the routing instance is being deleted and a
subsequent subscribe and routes have been sent by the agent for the new
incarnation of the instance, the assertion can fail. The subscribe for
the to be re-created instance is enqueued in vrf_membership_request_map_
whereas the pending routes are enqueued in the defer queue.

Nischal Sheth (nsheth)
description: updated
description: updated
Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : master

Review in progress for https://review.opencontrail.org/8499
Submitter: Nischal Sheth (<email address hidden>)

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

Review in progress for https://review.opencontrail.org/8500
Submitter: Nischal Sheth (<email address hidden>)

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

Review in progress for https://review.opencontrail.org/8501
Submitter: Nischal Sheth (<email address hidden>)

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

Reviewed: https://review.opencontrail.org/8499
Committed: http://github.org/Juniper/contrail-controller/commit/95af40ce8f75a807dfdd6d5340821655ab48e91f
Submitter: Zuul
Branch: master

commit 95af40ce8f75a807dfdd6d5340821655ab48e91f
Author: Nischal Sheth <email address hidden>
Date: Thu Mar 19 18:22:45 2015 -0700

Fix incorrect assertion in BgpXmppChannel::MembershipResponseHandler

If the current incarnation of the routing instance is being deleted
and a subsequent subscribe and routes have been sent by the agent for
the new incarnation of the instance, the assertion for the defer q
being empty can fail. The subscribe for the to be re-created instance
is enqueued in vrf_membership_request_map_ whereas the pending routes
are enqueued in the defer queue.

Change-Id: Id11a9d6b0b44f79176a0b83cbf8f89bba476be55
Closes-Bug: 1434383

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

Reviewed: https://review.opencontrail.org/8501
Committed: http://github.org/Juniper/contrail-controller/commit/091ac692bb7aefe11c749ef1c61f31601940669c
Submitter: Zuul
Branch: R2.0

commit 091ac692bb7aefe11c749ef1c61f31601940669c
Author: Nischal Sheth <email address hidden>
Date: Fri Mar 20 00:42:42 2015 -0700

Fix incorrect assertion in BgpXmppChannel::MembershipResponseHandler

If the current incarnation of the routing instance is being deleted
and a subsequent subscribe and routes have been sent by the agent for
the new incarnation of the instance, the assertion for the defer q
being empty can fail. The subscribe for the to be re-created instance
is enqueued in vrf_membership_request_map_ whereas the pending routes
are enqueued in the defer queue.

Change-Id: I68fd12a738f98ec665962a920e7a283dc6bf8706
Closes-Bug: 1434383

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

Reviewed: https://review.opencontrail.org/8500
Committed: http://github.org/Juniper/contrail-controller/commit/4662f54306080e69ace5ad3bbd44bea855120ff6
Submitter: Zuul
Branch: R2.1

commit 4662f54306080e69ace5ad3bbd44bea855120ff6
Author: Nischal Sheth <email address hidden>
Date: Fri Mar 20 00:42:42 2015 -0700

Fix incorrect assertion in BgpXmppChannel::MembershipResponseHandler

If the current incarnation of the routing instance is being deleted
and a subsequent subscribe and routes have been sent by the agent for
the new incarnation of the instance, the assertion for the defer q
being empty can fail. The subscribe for the to be re-created instance
is enqueued in vrf_membership_request_map_ whereas the pending routes
are enqueued in the defer queue.

Change-Id: I68fd12a738f98ec665962a920e7a283dc6bf8706
Closes-Bug: 1434383

Nischal Sheth (nsheth)
information type: Proprietary → Public
Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : [Review update] R1.10

Review in progress for https://review.opencontrail.org/16141
Submitter: Jean-Philippe Braun (<email address hidden>)

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

Other bug subscribers

Remote bug watches

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