Issues

Select view

Select search mode

 
16 of 16

enlinkd logging hibernate errors (lack of unique index)

Fixed

Description

I think I started seeing this after upgrading to v32.0.0, but that might be a coincidence.

In this case, the duplicate rows were identical except for a fraction of a section difference in isisnodecreattime - I manually removed the duplicates and I don’t see the error anymore.

The isiselement table should have a unique constraint on nodeid. From opennms mattermost chat, this also affects the lldpelement table.

Acceptance / Success Criteria

None

Attachments

2

Details

Assignee

Reporter

HB Grooming Date

HB Backlog Status

Components

Sprint

Priority

PagerDuty

Created October 20, 2023 at 2:00 PM
Updated January 31, 2024 at 3:04 PM
Resolved January 25, 2024 at 9:06 AM

Activity

Show:

Christian PapeJanuary 25, 2024 at 9:06 AM

Merged.

Christian PapeJanuary 24, 2024 at 7:36 AM

Please review:

  • PR:

Christian PapeJanuary 23, 2024 at 11:51 AM
Edited

There are two different problems in this issue:

  1. the nodeId column in the tables LldpElement, CdpElement, IsisElement and OspfElement needs to be unique. I created the liquibase changeset for that.

  2. it seems that the NullPointerException for the given topology is caused by a broken SNMP implementation. I looked through the code and the class OspfIfTableTracker is querying for several OIDs to determine the local interfaces. This somehow doesn't seem to work for the given topology:

    So, only one entry is returned and the OID is not increased to return the next one. So, Enhanced Linkd encounters for a device a link to another device but cannot determine its local interface for this link. I added null-checks to avoid the exceptions, but this is something that should not happen in a normal environment.

Ronny TrommerJanuary 16, 2024 at 4:01 PM

I have started to troubleshoot the problem within a lab environment. Enabling just LLDP in Enlinkd was not a problem and the topology was discovered correctly. I have just enabled OSPF discovery and got an unknown exception on the node page. The error message in jetty log is attached in the ospf-exception.log.