Discovery fails with JNA pinger
Description
Environment
Acceptance / Success Criteria
Attachments
Lucidchart Diagrams
Activity
Seth Leger September 12, 2011 at 12:12 PM
Ben put in some code that will evaluate whether IPv6 and IPv4 sockets can be created during the initialization of the ICMP libraries so we believe that this problem was fixed in 1.9.90. Please reopen if you can reverify that it occurs in this release. Thanks!
Andy Ellsworth July 7, 2011 at 12:02 PM
#define EAFNOSUPPORT 97 /* Address family not supported by protocol */
Matt Brozowski June 17, 2011 at 8:15 AM
Can you grep /usr/include/sys/errno.h for what error code 97 is?
Andy Ellsworth June 17, 2011 at 12:36 AM
Seeing similar behavior for JNA pinger in 1.9.90 snapshot.
CentOS 5.6 system with ipv6 disabled globally
Nodes manually provisioned via provisioning groups (no discovery)
All ICMP polling fails, pollerd.log shows the following:
2011-06-16 23:05:36,204 DEBUG [PollerScheduler-30 Pool-fiber0] IcmpMonitor: failed to ping /10.1.1.1
java.lang.reflect.InvocationTargetException
at sun.reflect.GeneratedConstructorAccessor180.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at org.opennms.jicmp.jna.NativeDatagramSocket.create(NativeDatagramSocket.java:74)
at org.opennms.netmgt.icmp.jna.V6Pinger.<init>(V6Pinger.java:52)
at org.opennms.netmgt.icmp.jna.JnaIcmpMessenger.<init>(JnaIcmpMessenger.java:53)
at org.opennms.netmgt.icmp.jna.JnaPinger.initialize(JnaPinger.java:65)
at org.opennms.netmgt.icmp.jna.JnaPinger.ping(JnaPinger.java:81)
at org.opennms.netmgt.icmp.jna.JnaPinger.ping(JnaPinger.java:103)
at org.opennms.netmgt.poller.monitors.IcmpMonitor.poll(IcmpMonitor.java:117)
at org.opennms.netmgt.poller.pollables.LatencyStoringServiceMonitorAdaptor.poll(LatencyStoringServiceMonitorAdaptor.java:116)
at org.opennms.netmgt.poller.pollables.PollableServiceConfig.poll(PollableServiceConfig.java:116)
at org.opennms.netmgt.poller.pollables.PollableService.poll(PollableService.java:185)
at org.opennms.netmgt.poller.pollables.PollableElement.poll(PollableElement.java:299)
at org.opennms.netmgt.poller.pollables.PollableContainer$5.run(PollableContainer.java:312)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at org.opennms.netmgt.poller.pollables.PollableElement.withTreeLock(PollableElement.java:270)
at org.opennms.netmgt.poller.pollables.PollableElement.withTreeLock(PollableElement.java:256)
at org.opennms.netmgt.poller.pollables.PollableElement.withTreeLock(PollableElement.java:234)
at org.opennms.netmgt.poller.pollables.PollableContainer.poll(PollableContainer.java:319)
at org.opennms.netmgt.poller.pollables.PollableInterface.poll(PollableInterface.java:212)
at org.opennms.netmgt.poller.pollables.PollableContainer$5.run(PollableContainer.java:312)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at org.opennms.netmgt.poller.pollables.PollableElement.withTreeLock(PollableElement.java:270)
at org.opennms.netmgt.poller.pollables.PollableElement.withTreeLock(PollableElement.java:256)
at org.opennms.netmgt.poller.pollables.PollableElement.withTreeLock(PollableElement.java:234)
at org.opennms.netmgt.poller.pollables.PollableContainer.poll(PollableContainer.java:319)
at org.opennms.netmgt.poller.pollables.PollableNode$3.run(PollableNode.java:302)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at org.opennms.netmgt.poller.pollables.PollableElement.withTreeLock(PollableElement.java:270)
at org.opennms.netmgt.poller.pollables.PollableElement.withTreeLock(PollableElement.java:256)
at org.opennms.netmgt.poller.pollables.PollableElement.withTreeLock(PollableElement.java:234)
at org.opennms.netmgt.poller.pollables.PollableNode.doPoll(PollableNode.java:305)
at org.opennms.netmgt.poller.pollables.PollableElement.doPoll(PollableElement.java:190)
at org.opennms.netmgt.poller.pollables.PollableService.doPoll(PollableService.java:218)
at org.opennms.netmgt.poller.pollables.PollableService$PollRunner.run(PollableService.java:64)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at org.opennms.netmgt.poller.pollables.PollableElement.withTreeLock(PollableElement.java:270)
at org.opennms.netmgt.poller.pollables.PollableElement.withTreeLock(PollableElement.java:256)
at org.opennms.netmgt.poller.pollables.PollableService.doRun(PollableService.java:390)
at org.opennms.netmgt.poller.pollables.PollableService.run(PollableService.java:371)
at org.opennms.netmgt.scheduler.Schedule.run(Schedule.java:138)
at org.opennms.netmgt.scheduler.Schedule$ScheduleEntry.run(Schedule.java:83)
at org.opennms.netmgt.scheduler.LegacyScheduler$1.run(LegacyScheduler.java:295)
at org.opennms.core.concurrent.RunnableConsumerThreadPool$FiberThreadImpl.run(RunnableConsumerThreadPool.java:427)
at java.lang.Thread.run(Thread.java:662)
Caused by: com.sun.jna.LastErrorException: errno was 97
at org.opennms.jicmp.jna.UnixV6NativeSocket.socket(Native Method)
at org.opennms.jicmp.jna.UnixV6NativeSocket.<init>(UnixV6NativeSocket.java:54)
... 46 more
Sevan Janiyan May 12, 2011 at 7:25 PM
As a temp workaround I've switch to using the JniPinger by setting
org.opennms.netmgt.icmp.pingerClass=org.opennms.netmgt.icmp.jni.JniPinger
in etc/opennms.properties
Details
Details
Assignee
Reporter
Components
Fix versions
Affects versions
Priority
PagerDuty
PagerDuty Incident
PagerDuty

OpenNMS discovery process fails one a range is added to "Home / Admin / Discovery / Modify Configuration"