eventengine enters an infinite loop and stops processing events

Bug #1578108 reported by Morten Brekkevold
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Network Administration Visualized
Fix Released
Critical
Morten Brekkevold

Bug Description

Under rare circumstances, the eventengine (and possibly, other parts of NAV as well) will enter an infinite loop, rendering it unable to continue processing events, and thus alerts will cease to be dispatched from NAV.

The issue arises from the nav.manage.Module.get_chassis() method, which traverses the NetboxEntity hierarchy bottom-up in an attempt to find the chassis that owns the respective module.

If the hierarchy, for some unknown reason, such as a either a NAV bug or a vendor SNMP implementation bug, contains cycles (i.e. it's not a proper tree), the loop may never exit.

The code attempts to protect against infinite loops, but only considers the corner case where an entity points to itself as its parent, not the case that two entities point to each other as their respective parents (which seems to be the case at one customer's installation)

Tags: eventenegine
Revision history for this message
Morten Brekkevold (mbrekkevold) wrote :
Changed in nav:
milestone: none → 4.4.4
status: In Progress → Fix Committed
Changed in nav:
status: Fix Committed → Fix Released
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.