1.10 Removed IP Hostname Field During Provisioning Scans

Description

The IP hostnames were shown on the node page in the interface java applet but after upgrading to 1.10 and provisioned was rescanned the IP hostnames have been removed.

OpenNMS version 1.10.0
psql -U opennms opennms -c "SELECT * FROM ipinterface WHERE nodeid ='1046';"
id | nodeid | ipaddr | ifindex | iphostname | ismanaged | ipstatus | iplastcapsdpoll | issnmpprimary | snmpinterfaceid
--------------------------------------------------------------------------------------------------------------------+----------------- 14823 | 1046 | 10.0.1.120 | 3 | 10.0.1.120 | M | | 2012-03-07 14:27:43.874-07 | S | 14828
14787 | 1046 | 10.0.1.121 | 2 | 10.0.1.121 | M | | 2012-03-07 14:27:43.874-07 | P | 14827
14843 | 1046 | 10.0.1.122 | 6 | 10.0.1.122 | M | | 2012-03-07 14:27:43.874-07 | N | 14835
14839 | 1046 | 10.0.1.123 | 5 | 10.0.1.122 | M | | 2012-03-07 14:27:43.874-07 | N | 14833

2012-03-07 14:27:44,151 INFO [writeExecutor-6] DefaultProvisionService$1: Updating IpInterface [OnmsIpInterface@7584545f ipAddr = '10.0.1.120', ipHostName = '10.0.1.120', i
sManaged = 'M', isSnmpPrimary = P, ipLastCapsdPoll = 2012-03-07 14:27:43.874]

OpenNMS version 1.8.10
psql -U opennms opennms -c "SELECT * FROM ipinterface WHERE nodeid ='11672';"
id | nodeid | ipaddr | ifindex | iphostname | ismanaged | ipstatus | iplastcapsdpoll | issnmpprimary | snmpinterfaceid
---------------------------------------------------------------------------------------------------------------------------------+----------------- 14823 | 1046 | 10.0.1.120 | 3 | 10.0.1.120 | M | abc0.a.com | 2012-03-07 14:27:43.874-07 | S | 14828
14787 | 1046 | 10.0.1.121 | 2 | 10.0.1.121 | M | abc1.a.com | 2012-03-07 14:27:43.874-07 | P | 14827
14843 | 1046 | 10.0.1.122 | 6 | 10.0.1.122 | M | abc2.a.com | 2012-03-07 14:27:43.874-07 | N | 14835
14839 | 1046 | 10.0.1.123 | 5 | 10.0.1.123 | M | abc3.a.com | 2012-03-07 14:27:43.874-07 | N | 14833

2012-03-06 16:33:20,391 INFO [writeExecutor-2] DefaultProvisionService: Updating IpInterface [OnmsIpInterface@499031db ipaddr = '10.0.1.120', iphostname = 'abc1.a.com', ismanaged = 'M', iplastcapsdpoll = Tue Mar 06 16:33:05 MST 2012, issnmpprimary = P]

Environment

System Details -------------- OpenNMS Version: 1.10.0 Java Version: 1.6.0_29 Sun Microsystems Inc. Java Virtual Machine: 20.4-b02 Sun Microsystems Inc. Operating System: Linux 2.6.18-274.17.1.el5xen amd64 Servlet Container: jetty/7.5.1.v20110908 (Servlet Spec 2.5) User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_3) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.66 Safari/535.11

Acceptance / Success Criteria

None

Attachments

1

Lucidchart Diagrams

Activity

Show:

jcat October 4, 2012 at 7:42 AM

That's great - thank you

Cheers,
Just

Benjamin Reed October 3, 2012 at 11:11 AM

Thanks for the reminder, the DNS lookup seems like a reasonable (short) delay to include as part of the scanning process.

I implemented it slightly different, but basically the same idea.

jcat October 3, 2012 at 7:44 AM

Hi guys,

I'm not sure if there's a potential release date for 1.10.6 yet, but is there any chance this will make it?
It would really help me out!

Cheers,
Just

Jeff Gehlbach September 14, 2012 at 11:52 AM

This is not a GUI bug, so I removed the "gui" label. Added the "patch" label since issue includes a patch.

The patch, BTW, looks sane to me, but I haven't vetted it for potential performance issues – the DNS lookup that it performs will be done synchronously, which may have disastrous consequences when mixed with the wholly asynchronous nature of Provisiond's life cycle model. One of the developers more familiar with the SEDA pattern will need to evaluate it before deciding whether it can safely be applied as-is.

jcat September 13, 2012 at 8:34 AM

I've created a patch that fixes the issue for me.

Please be warned, I've never written any java code before, and I don't know what the wider ramifications of the patch I've created are.

The patch basically just reverts iface.setIpHostName to use previous code from 1.8.17 which uses InetAddress.getByName(ipAddr).getHostName() instead of InetAddressUtils.normalize(ipAddr)

I guess it was changed for a reason, but I can't see how it would work using the new method. But then, as I've already alluded to, I'm not a java or OpenNMS developer!

I'm not expecting this patch to be excepted necessarily, but I'm hoping it will point someone who can fix this is the right direction, as this bug is causing me a lot of pain.

Thanks very much in advance - if there's anything else I can do or provide that might speed up resolution of this bug, please let me know.

Cheers,
Just

Fixed

Details

Assignee

Reporter

Components

Fix versions

Affects versions

Priority

PagerDuty

Created March 10, 2012 at 1:36 PM
Updated January 27, 2017 at 4:20 PM
Resolved October 3, 2012 at 11:11 AM