Module replacements will sometimes crash ipdevpoll inventory job with IntegrityError
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Network Administration Visualized |
Fix Released
|
High
|
Morten Brekkevold | ||
4.3 |
Won't Fix
|
High
|
Morten Brekkevold | ||
4.4 |
Fix Released
|
High
|
Morten Brekkevold |
Bug Description
Under certain circumstances, the ipdevpoll inventory job will crash with a database IntegrityError if a module has been replaced inside a chassis.
The problem seems to be mainly caused by keeping old modules/devices with serial numbers around with a "gone_since" timestamp, to safeguard against deleting entities that only have stopped working temporarily.
Missing devices whose entPhysIndex is being re-used should probably be deleted outright.
Traceback example from ipdevpoll.log:
2015-12-13 06:50:15,395 [ERROR jobs.jobhandler] [statuscheck example-
Traceback (most recent call last):
File "/usr/lib/
manager.save()
File "/usr/lib/
return func(*args, **kwargs)
File "/usr/lib/
self.
File "/usr/lib/
self.
File "/usr/lib/
return func(*args, **kwargs)
File "/usr/lib/
self.
File "/usr/lib/
transaction
File "/usr/lib/
connection.
File "/usr/lib/
self._commit()
File "/usr/lib/
return self.connection
IntegrityError: duplicate key value violates unique constraint "netboxentity_
DETAIL: Key (netboxid, source, index)=(224, ENTITY-MIB, 3017) already exists.
Changed in nav: | |
milestone: | none → 4.3.4 |
milestone: | 4.3.4 → none |
Changed in nav: | |
status: | In Progress → Fix Committed |
Changed in nav: | |
status: | Fix Committed → Fix Released |
fix here: https:/ /nav.uninett. no/hg/stable/ rev/f4683a71586 1