Comment 14 for bug 1473597

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

Reviewed: https://review.opencontrail.org/13171
Committed: http://github.org/Juniper/contrail-controller/commit/1ca68b2fe083f72bceaf2f021ef1e837b3db62be
Submitter: Zuul
Branch: master

commit 1ca68b2fe083f72bceaf2f021ef1e837b3db62be
Author: Divakar <email address hidden>
Date: Wed Jul 29 21:42:06 2015 +0530

Handling service-instance reuse

When the neutron router is added and deleted continuously in a loop, the
service instance object in Agent is not properly handled. When service
instance is delete marked and re-add appears again, DB table invokes
OnChange on the DBEntry rather Add. Service instance code is not
handling this case and IFMapNode is set in DBEntry only as part
of ADD. This is leading to stale IFMapNode entry in DBEntry and leading
to crash when IFMap node graph is invoked as part of OnChange.

As a fix, even in OnChange, IFMapNode is set in DBEntry. As
service_instance is taking a intrusive pointer to IFMapNode, redundatnt
node_ member is removed from the object.

Also service_instance_test has been moved out of falky test.

closes-bug: #1473597
closes-bug: #1474273
partial-bug: #1465413

Conflicts:

 src/vnsw/agent/oper/service_instance.h

Change-Id: I56880a0d2b82f310c351ba292b7a54098b6ea880