java.lang.Error: IP Helper Library GetIfTable function failed

There are no available Samebug tips for this exception. Do you have an idea how to solve this issue? A short tip would help users who saw this issue last week.

  • db:: 6.34::securityPrincipal fa
    via by Unknown author,
  • SOA server startup Error
    via by 831138,
  • FULL PRODUCT VERSION : java version "1.7.0_75" Java(TM) SE Runtime Environment (build 1.7.0_75-b13) Java HotSpot(TM) 64-Bit Server VM (build 24.75-b04, mixed mode) ADDITIONAL OS VERSION INFORMATION : The bug was found on Windows 7 64-bit, but can occur on all supported Windows versions. A DESCRIPTION OF THE PROBLEM : Method NetworkInterface.getNetworkInterfaces() might throw java.lang.Error with error message "IP Helper Library GetIfTable function failed", if it is called at the same time as a new network interface shows up in Windows. The reason is a subtle race condition. Function enumInterfaces in NetworkInterface.c first calls GetIfTable(...) with a NULL buffer to retrieve the buffer size. Then it allocates a buffer of this size and calls GetIfTable(...) again. If a new network interface has appeared between these two calls, the buffer will be too small and the last GetIfTable(...) call will fail (that is, return ERROR_INSUFFICIENT_BUFFER instead of 0). Then the function throws a java.lang.Error with the above error message. The solution is to call GetIfEntry again with a new buffer if it returns ERROR_INSUFFICIENT_BUFFER, and give up first after a reasonable number of reattempts. STEPS TO FOLLOW TO REPRODUCE THE PROBLEM : Start a Java application that calls NetworkInterface.getNetworkInterfaces() in a loop. Plug out and in a USB wi-fi adapter until the error occurs. EXPECTED VERSUS ACTUAL BEHAVIOR : EXPECTED - No NetworkInterface.getNetworkInterfaces() calls should throw java.lang.Error. ACTUAL - java.lang.Error: IP Helper Library GetIfTable function failed at java.net.NetworkInterface.getAll(Native Method) at java.net.NetworkInterface.getNetworkInterfaces(NetworkInterface.java:334) ... ERROR MESSAGES/STACK TRACES THAT OCCUR : The bug was found when a client connected to an RMI server, at the same time as a mobile broadband dongle was plugged in to the PC: Exception in thread "RMI TCP Accept-0" java.lang.Error: IP Helper Library GetIfTable function failed at java.net.NetworkInterface.getAll(Native Method) at java.net.NetworkInterface.getNetworkInterfaces(NetworkInterface.java:334) at sun.management.jmxremote.LocalRMIServerSocketFactory$1.accept(LocalRMIServerSocketFactory.java:86) at sun.rmi.transport.tcp.TCPTransport$AcceptLoop.executeAcceptLoop(TCPTransport.java:399) at sun.rmi.transport.tcp.TCPTransport$AcceptLoop.run(TCPTransport.java:371) at java.lang.Thread.run(Thread.java:745) REPRODUCIBILITY : This bug can be reproduced rarely.
    via by Webbug Group,
    • java.lang.Error: IP Helper Library GetIfTable function failed at java.net.NetworkInterface.getAll(Native Method) at java.net.NetworkInterface.getNetworkInterfaces(NetworkInterface.java:282) at oracle.dms.util.NetUtil.clinit(NetUtil.java:56) at oracle.dms.table.RowSupport.castValueType(RowSupport.java:337) at oracle.dms.table.RowSupport.updateValue(RowSupport.java:297) at oracle.dms.table.SpyTableSource.getTable(SpyTableSource.java:177) at oracle.dms.table.MultiTableSource.getTable(MultiTableSource.java:107) at oracle.dms.table.TableSource.getTables(TableSource.java:224) at oracle.dms.aggregator.Storage.getTables(Storage.java:642) at oracle.dms.aggregator.Storage._getTables(Storage.java:517) at oracle.dms.aggregator.Storage.getTables(Storage.java:392) at oracle.dms.table.TableSource.getTableGroup(TableSource.java:238) at oracle.dms.jmx.app.ServerAggreMBeanImpl.getTableGroup(ServerAggreMBeanImpl.java:206) at oracle.dms.jmx.app.ServerAggreMBeanWrapper.invokeOperation(ServerAggreMBeanWrapper.java:94) at oracle.dms.jmx.app.ServerAggreMBeanWrapper.invoke(ServerAggreMBeanWrapper.java:71) at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836) at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761) at weblogic.management.jmx.mbeanserver.WLSMBeanServerInterceptorBase$16.run(WLSMBeanServerInterceptorBase.java:449) at weblogic.management.jmx.mbeanserver.WLSMBeanServerInterceptorBase.invoke(WLSMBeanServerInterceptorBase.java:447) at weblogic.management.mbeanservers.internal.JMXContextInterceptor.invoke(JMXContextInterceptor.java:268) at weblogic.management.jmx.mbeanserver.WLSMBeanServerInterceptorBase$16.run(WLSMBeanServerInterceptorBase.java:449) at weblogic.management.jmx.mbeanserver.WLSMBeanServerInterceptorBase.invoke(WLSMBeanServerInterceptorBase.java:447) at weblogic.management.mbeanservers.internal.SecurityInterceptor.invoke(SecurityInterceptor.java:444) at weblogic.management.jmx.mbeanserver.WLSMBeanServer.invoke(WLSMBeanServer.java:323) at weblogic.management.mbeanservers.internal.JMXConnectorSubjectForwarder$11$1.run(JMXConnectorSubjectForwarder.java:663) at weblogic.management.mbeanservers.internal.JMXConnectorSubjectForwarder$11.run(JMXConnectorSubjectForwarder.java:661) at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363) at weblogic.management.mbeanservers.internal.JMXConnectorSubjectForwarder.invoke(JMXConnectorSubjectForwarder.java:654) at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1426) at javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72) at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1264) at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1366) at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:788) at javax.management.remote.rmi.RMIConnectionImpl_WLSkel.invoke(Unknown Source) at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:589) at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:477) at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363) at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147) at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:473) at weblogic.rmi.internal.wls.WLSExecuteRequest.run(WLSExecuteRequest.java:118) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201) at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)

    Users with the same issue

    Unknown visitor1 times, last one,
    Unknown visitor1 times, last one,
    Unknown visitor1 times, last one,