Comment 9 for bug 1533435

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

Reviewed: https://review.opencontrail.org/16290
Committed: http://github.org/Juniper/contrail-controller/commit/861864bee9578ce688cda1d59234ea6b755ef60f
Submitter: Zuul
Branch: R2.20

commit 861864bee9578ce688cda1d59234ea6b755ef60f
Author: Prakash M Bailkeri <email address hidden>
Date: Wed Jan 13 22:22:02 2016 -0800

Fix a corner case with routing instance delete

Sequence of event that causes the crash
1. Static route config deleted
2. Static Route maanger triggers resolve_trigger_ to re-evaluate static
route config
3. Before the resolve trigger is invoked routing instance is deleted

Resolve trigger calls ProcessStaticRouteConfig to apply any pending static
route config. ProcessStaticRouteConfig accesses the NULL config pointer of
the routing instance

Fix:
1. Check whether the routing instance is deleted in ProcessStaticRouteConfig
2. Reset the resolve_trigger_ in StaticRouteMgr destructor
3. Add API to disable resolve_trigger_ and Add UT to test delayed processing
of resolve_trigger_

Change-Id: Icb1b9bad340ccefc9fbab75188034ade79a6193a
Closes-bug: #1533435