Provisiond fails with java.lang.NullPointerException
Description
Starting in 1.10.9 provisiond is failing on ADVA FSP3000 R7 nodes. It works fine in 1.10.8 I temporarily replaced the lib/opennms-provisiond-1.10.10.jar with the 1.10.8 version and no error.
2013-06-07 13:19:20,727 INFO [DefaultUDPTransportMapping_172.20.17.22/0] NodeScan$AgentScan$3: Processing ifTable row for ifIndex 269091634 on node 8/test1/1362107918312 2013-06-07 13:19:20,728 INFO [scanExecutor-6] NodeScan: Aborting Scan of node 8 for the following reason: Aborting node scan : Agent failed while scanning the interfaces table: Unexpected error occurred processing ifTable/ifXTable for /172.20.72.3: java.lang.NullPointerException
I'm guessing it was the recent changes with interface speed.
Some on the snmp contact information and interface descriptions were redacted.
Benjamin Reed June 21, 2013 at 8:46 AM
Do you get more of a stack trace than that anywhere? That's not really enough to tell what's going on...
Scott Mace June 21, 2013 at 12:08 AM
I tried opennms-provisiond-1.10.11-20130621.010044-11.jar and the problem still occurs:
The Node with Id: 8; ForeignSource: test1; ForeignId:1362107918312 has aborted for the following reason: Aborting node scan : Agent failed while scanning the interfaces table: Unexpected error occurred processing ifTable/ifXTable for /192.168.1.72: java.lang.NullPointerException
Benjamin Reed June 17, 2013 at 5:19 PM
I wasn't able to reproduce an NPE in 1.10.11-SNAPSHOT with that SnmpWalk, but I do see there's a potential funkiness in precedence when we're evaluating whether to use ifhighspeed vs ifspeed that I've committed a fix for. Let me know if one of the upcoming snapshots fixes it.
Starting in 1.10.9 provisiond is failing on ADVA FSP3000 R7 nodes. It works fine in 1.10.8
I temporarily replaced the lib/opennms-provisiond-1.10.10.jar with the 1.10.8 version and no error.
2013-06-07 13:19:20,727 INFO [DefaultUDPTransportMapping_172.20.17.22/0] NodeScan$AgentScan$3: Processing ifTable row for ifIndex 269091634 on node 8/test1/1362107918312
2013-06-07 13:19:20,728 INFO [scanExecutor-6] NodeScan: Aborting Scan of node 8 for the following reason: Aborting node scan : Agent failed while scanning the interfaces table: Unexpected error occurred processing ifTable/ifXTable for /172.20.72.3: java.lang.NullPointerException
I'm guessing it was the recent changes with interface speed.
the agent does not populate ifspeed, so it's null
snmpwalk:
IF-MIB::ifIndex.252314817 = INTEGER: 252314817
IF-MIB::ifIndex.252314818 = INTEGER: 252314818
IF-MIB::ifIndex.252318401 = INTEGER: 252318401
IF-MIB::ifIndex.252318402 = INTEGER: 252318402
IF-MIB::ifIndex.269093633 = INTEGER: 269093633
IF-MIB::ifIndex.269093634 = INTEGER: 269093634
IF-MIB::ifIndex.269093635 = INTEGER: 269093635
IF-MIB::ifIndex.269093636 = INTEGER: 269093636
IF-MIB::ifIndex.269093698 = INTEGER: 269093698
IF-MIB::ifIndex.269093699 = INTEGER: 269093699
IF-MIB::ifIndex.302648160 = INTEGER: 302648160
IF-MIB::ifIndex.302648161 = INTEGER: 302648161
IF-MIB::ifIndex.302648162 = INTEGER: 302648162
IF-MIB::ifIndex.302648163 = INTEGER: 302648163
IF-MIB::ifIndex.302648168 = INTEGER: 302648168
IF-MIB::ifIndex.302648169 = INTEGER: 302648169
IF-MIB::ifIndex.302648170 = INTEGER: 302648170
IF-MIB::ifIndex.302648171 = INTEGER: 302648171
IF-MIB::ifIndex.420088672 = INTEGER: 420088672
IF-MIB::ifIndex.420088673 = INTEGER: 420088673
IF-MIB::ifIndex.420088674 = INTEGER: 420088674
IF-MIB::ifIndex.420088675 = INTEGER: 420088675
IF-MIB::ifIndex.420088680 = INTEGER: 420088680
IF-MIB::ifIndex.420088681 = INTEGER: 420088681
IF-MIB::ifIndex.420088682 = INTEGER: 420088682
IF-MIB::ifIndex.420088683 = INTEGER: 420088683
IF-MIB::ifIndex.487197506 = INTEGER: 487197506
IF-MIB::ifIndex.487197507 = INTEGER: 487197507
IF-MIB::ifIndex.554311937 = INTEGER: 554311937
IF-MIB::ifIndex.554311938 = INTEGER: 554311938
IF-MIB::ifIndex.571089153 = INTEGER: 571089153
IF-MIB::ifIndex.571089226 = INTEGER: 571089226
IF-MIB::ifIndex.571089227 = INTEGER: 571089227
IF-MIB::ifDescr.252314817 = STRING: OM-1-4-1
IF-MIB::ifDescr.252314818 = STRING: OM-1-4-2
IF-MIB::ifDescr.252318401 = STRING: OM-1-18-1
IF-MIB::ifDescr.252318402 = STRING: OM-1-18-2
IF-MIB::ifDescr.269093633 = STRING: CH-1-11-C1
IF-MIB::ifDescr.269093634 = STRING: CH-1-11-C2
IF-MIB::ifDescr.269093635 = STRING: CH-1-11-C3
IF-MIB::ifDescr.269093636 = STRING: CH-1-11-C4
IF-MIB::ifDescr.269093698 = STRING: CH-1-11-NE
IF-MIB::ifDescr.269093699 = STRING: CH-1-11-NW
IF-MIB::ifDescr.302648160 = STRING: VCH-1-11-NE1
IF-MIB::ifDescr.302648161 = STRING: VCH-1-11-NE2
IF-MIB::ifDescr.302648162 = STRING: VCH-1-11-NE3
IF-MIB::ifDescr.302648163 = STRING: VCH-1-11-NE4
IF-MIB::ifDescr.302648168 = STRING: VCH-1-11-NW1
IF-MIB::ifDescr.302648169 = STRING: VCH-1-11-NW2
IF-MIB::ifDescr.302648170 = STRING: VCH-1-11-NW3
IF-MIB::ifDescr.302648171 = STRING: VCH-1-11-NW4
IF-MIB::ifDescr.420088672 = STRING: VS1-1-11-NE1
IF-MIB::ifDescr.420088673 = STRING: VS1-1-11-NE2
IF-MIB::ifDescr.420088674 = STRING: VS1-1-11-NE3
IF-MIB::ifDescr.420088675 = STRING: VS1-1-11-NE4
IF-MIB::ifDescr.420088680 = STRING: VS1-1-11-NW1
IF-MIB::ifDescr.420088681 = STRING: VS1-1-11-NW2
IF-MIB::ifDescr.420088682 = STRING: VS1-1-11-NW3
IF-MIB::ifDescr.420088683 = STRING: VS1-1-11-NW4
IF-MIB::ifDescr.487197506 = STRING: EOC-1-11-NE
IF-MIB::ifDescr.487197507 = STRING: EOC-1-11-NW
IF-MIB::ifDescr.554311937 = STRING: SC-1-A-C1
IF-MIB::ifDescr.554311938 = STRING: SC-1-A-C2
IF-MIB::ifDescr.571089153 = STRING: LINK-1-A-SER
IF-MIB::ifDescr.571089226 = STRING: LINK-1-A-10
IF-MIB::ifDescr.571089227 = STRING: LINK-1-A-11
IF-MIB::ifType.252314817 = INTEGER: other(1)
IF-MIB::ifType.252314818 = INTEGER: other(1)
IF-MIB::ifType.252318401 = INTEGER: other(1)
IF-MIB::ifType.252318402 = INTEGER: other(1)
IF-MIB::ifType.269093633 = INTEGER: ethernetCsmacd(6)
IF-MIB::ifType.269093634 = INTEGER: ethernetCsmacd(6)
IF-MIB::ifType.269093635 = INTEGER: ethernetCsmacd(6)
IF-MIB::ifType.269093636 = INTEGER: ethernetCsmacd(6)
IF-MIB::ifType.269093698 = INTEGER: fibreChannel(56)
IF-MIB::ifType.269093699 = INTEGER: fibreChannel(56)
IF-MIB::ifType.302648160 = INTEGER: ethernetCsmacd(6)
IF-MIB::ifType.302648161 = INTEGER: ethernetCsmacd(6)
IF-MIB::ifType.302648162 = INTEGER: ethernetCsmacd(6)
IF-MIB::ifType.302648163 = INTEGER: ethernetCsmacd(6)
IF-MIB::ifType.302648168 = INTEGER: ethernetCsmacd(6)
IF-MIB::ifType.302648169 = INTEGER: ethernetCsmacd(6)
IF-MIB::ifType.302648170 = INTEGER: ethernetCsmacd(6)
IF-MIB::ifType.302648171 = INTEGER: ethernetCsmacd(6)
IF-MIB::ifType.420088672 = INTEGER: sonetPath(50)
IF-MIB::ifType.420088673 = INTEGER: sonetPath(50)
IF-MIB::ifType.420088674 = INTEGER: sonetPath(50)
IF-MIB::ifType.420088675 = INTEGER: sonetPath(50)
IF-MIB::ifType.420088680 = INTEGER: sonetPath(50)
IF-MIB::ifType.420088681 = INTEGER: sonetPath(50)
IF-MIB::ifType.420088682 = INTEGER: sonetPath(50)
IF-MIB::ifType.420088683 = INTEGER: sonetPath(50)
IF-MIB::ifType.487197506 = INTEGER: dcn(141)
IF-MIB::ifType.487197507 = INTEGER: dcn(141)
IF-MIB::ifType.554311937 = INTEGER: ethernetCsmacd(6)
IF-MIB::ifType.554311938 = INTEGER: ethernetCsmacd(6)
IF-MIB::ifType.571089153 = INTEGER: dcn(141)
IF-MIB::ifType.571089226 = INTEGER: dcn(141)
IF-MIB::ifType.571089227 = INTEGER: dcn(141)
IF-MIB::ifPhysAddress.252314817 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.252314818 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.252318401 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.252318402 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.269093633 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.269093634 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.269093635 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.269093636 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.269093698 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.269093699 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.302648160 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.302648161 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.302648162 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.302648163 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.302648168 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.302648169 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.302648170 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.302648171 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.420088672 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.420088673 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.420088674 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.420088675 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.420088680 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.420088681 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.420088682 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.420088683 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.487197506 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.487197507 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.554311937 = STRING: 0:80:ea:7:5d:c4
IF-MIB::ifPhysAddress.554311938 = STRING: 0:80:ea:7:5d:c5
IF-MIB::ifPhysAddress.571089153 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.571089226 = STRING: 0:0:0:0:0:0
IF-MIB::ifPhysAddress.571089227 = STRING: 0:0:0:0:0:0
IF-MIB::ifAdminStatus.252314817 = INTEGER: up(1)
IF-MIB::ifAdminStatus.252314818 = INTEGER: up(1)
IF-MIB::ifAdminStatus.252318401 = INTEGER: up(1)
IF-MIB::ifAdminStatus.252318402 = INTEGER: up(1)
IF-MIB::ifAdminStatus.269093633 = INTEGER: down(2)
IF-MIB::ifAdminStatus.269093634 = INTEGER: down(2)
IF-MIB::ifAdminStatus.269093635 = INTEGER: down(2)
IF-MIB::ifAdminStatus.269093636 = INTEGER: down(2)
IF-MIB::ifAdminStatus.269093698 = INTEGER: up(1)
IF-MIB::ifAdminStatus.269093699 = INTEGER: up(1)
IF-MIB::ifAdminStatus.302648160 = INTEGER: down(2)
IF-MIB::ifAdminStatus.302648161 = INTEGER: down(2)
IF-MIB::ifAdminStatus.302648162 = INTEGER: down(2)
IF-MIB::ifAdminStatus.302648163 = INTEGER: down(2)
IF-MIB::ifAdminStatus.302648168 = INTEGER: down(2)
IF-MIB::ifAdminStatus.302648169 = INTEGER: down(2)
IF-MIB::ifAdminStatus.302648170 = INTEGER: down(2)
IF-MIB::ifAdminStatus.302648171 = INTEGER: down(2)
IF-MIB::ifAdminStatus.420088672 = INTEGER: down(2)
IF-MIB::ifAdminStatus.420088673 = INTEGER: down(2)
IF-MIB::ifAdminStatus.420088674 = INTEGER: down(2)
IF-MIB::ifAdminStatus.420088675 = INTEGER: down(2)
IF-MIB::ifAdminStatus.420088680 = INTEGER: down(2)
IF-MIB::ifAdminStatus.420088681 = INTEGER: down(2)
IF-MIB::ifAdminStatus.420088682 = INTEGER: down(2)
IF-MIB::ifAdminStatus.420088683 = INTEGER: down(2)
IF-MIB::ifAdminStatus.487197506 = INTEGER: up(1)
IF-MIB::ifAdminStatus.487197507 = INTEGER: up(1)
IF-MIB::ifAdminStatus.554311937 = INTEGER: up(1)
IF-MIB::ifAdminStatus.554311938 = INTEGER: down(2)
IF-MIB::ifAdminStatus.571089153 = INTEGER: up(1)
IF-MIB::ifAdminStatus.571089226 = INTEGER: up(1)
IF-MIB::ifAdminStatus.571089227 = INTEGER: up(1)
IF-MIB::ifOperStatus.252314817 = INTEGER: up(1)
IF-MIB::ifOperStatus.252314818 = INTEGER: up(1)
IF-MIB::ifOperStatus.252318401 = INTEGER: up(1)
IF-MIB::ifOperStatus.252318402 = INTEGER: up(1)
IF-MIB::ifOperStatus.269093633 = INTEGER: down(2)
IF-MIB::ifOperStatus.269093634 = INTEGER: down(2)
IF-MIB::ifOperStatus.269093635 = INTEGER: down(2)
IF-MIB::ifOperStatus.269093636 = INTEGER: down(2)
IF-MIB::ifOperStatus.269093698 = INTEGER: up(1)
IF-MIB::ifOperStatus.269093699 = INTEGER: up(1)
IF-MIB::ifOperStatus.302648160 = INTEGER: down(2)
IF-MIB::ifOperStatus.302648161 = INTEGER: down(2)
IF-MIB::ifOperStatus.302648162 = INTEGER: down(2)
IF-MIB::ifOperStatus.302648163 = INTEGER: down(2)
IF-MIB::ifOperStatus.302648168 = INTEGER: down(2)
IF-MIB::ifOperStatus.302648169 = INTEGER: down(2)
IF-MIB::ifOperStatus.302648170 = INTEGER: down(2)
IF-MIB::ifOperStatus.302648171 = INTEGER: down(2)
IF-MIB::ifOperStatus.420088672 = INTEGER: up(1)
IF-MIB::ifOperStatus.420088673 = INTEGER: up(1)
IF-MIB::ifOperStatus.420088674 = INTEGER: up(1)
IF-MIB::ifOperStatus.420088675 = INTEGER: up(1)
IF-MIB::ifOperStatus.420088680 = INTEGER: up(1)
IF-MIB::ifOperStatus.420088681 = INTEGER: up(1)
IF-MIB::ifOperStatus.420088682 = INTEGER: up(1)
IF-MIB::ifOperStatus.420088683 = INTEGER: up(1)
IF-MIB::ifOperStatus.487197506 = INTEGER: up(1)
IF-MIB::ifOperStatus.487197507 = INTEGER: up(1)
IF-MIB::ifOperStatus.554311937 = INTEGER: down(2)
IF-MIB::ifOperStatus.554311938 = INTEGER: down(2)
IF-MIB::ifOperStatus.571089153 = INTEGER: up(1)
IF-MIB::ifOperStatus.571089226 = INTEGER: up(1)
IF-MIB::ifOperStatus.571089227 = INTEGER: up(1)