JDK-8065559 : In pure IPV6 windows machine, java.util.UUID.randomUUID fails
  • Type: Bug
  • Component: core-libs
  • Sub-Component: java.net
  • Affected Version: 8u25
  • Priority: P4
  • Status: Closed
  • Resolution: Duplicate
  • OS: windows_7
  • CPU: x86_64
  • Submitted: 2014-11-13
  • Updated: 2021-10-15
  • Resolved: 2014-11-20
Related Reports
Duplicate :  
Relates :  
Description
FULL PRODUCT VERSION :
java version "1.8.0_20"
Java(TM) SE Runtime Environment (build 1.8.0_20-b26)
Java HotSpot(TM) 64-Bit Server VM (build 25.20-b23, mixed mode)

ADDITIONAL OS VERSION INFORMATION :
Windows 7 (6.1 build 7601 SP1)

EXTRA RELEVANT SYSTEM CONFIGURATION :
Pure IPv6 (Note: it is not a dual stack machine).

A DESCRIPTION OF THE PROBLEM :
Exception stacktrace

Exception in thread "main" java.lang.Error: IP Helper Library GetIpAddrTable function failed
        at java.net.NetworkInterface.getAll(Native Method)
        at java.net.NetworkInterface.getNetworkInterfaces(NetworkInterface.java:343)
        at sun.security.provider.SeedGenerator.addNetworkAdapterInfo(SeedGenerator.java:233)
        at sun.security.provider.SeedGenerator.access$000(SeedGenerator.java:80)
        at sun.security.provider.SeedGenerator$1.run(SeedGenerator.java:183)
        at sun.security.provider.SeedGenerator$1.run(SeedGenerator.java:168)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.security.provider.SeedGenerator.getSystemEntropy(SeedGenerator.java:168)
        at sun.security.provider.SecureRandom$SeederHolder.<clinit>(SecureRandom.java:190)
        at sun.security.provider.SecureRandom.engineNextBytes(SecureRandom.java:210)
        at java.security.SecureRandom.nextBytes(SecureRandom.java:457)
        at java.util.UUID.randomUUID(UUID.java:145)
        at org.hibernate.id.uuid.StandardRandomStrategy.generateUUID(StandardRandomStrategy.java:52)
        at org.hibernate.id.UUIDGenerator.generate(UUIDGenerator.java:116)
        at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:492)
        at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1857)

STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
There are many JDK core API and 3rd party software that are failing
f.e.
1. File.createTempFile(xxx)
2. j.u.UUID.randomeUUID( )


EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
The issue at the native layer should be address and there should no exceptions.
ACTUAL -
Exception in thread "main" java.lang.Error: IP Helper Library GetIpAddrTable function failed
        at java.net.NetworkInterface.getAll(Native Method)
        at java.net.NetworkInterface.getNetworkInterfaces(NetworkInterface.java:343)
        at sun.security.provider.SeedGenerator.addNetworkAdapterInfo(SeedGenerator.java:233)
        at sun.security.provider.SeedGenerator.access$000(SeedGenerator.java:80)
        at sun.security.provider.SeedGenerator$1.run(SeedGenerator.java:183)
        at sun.security.provider.SeedGenerator$1.run(SeedGenerator.java:168)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.security.provider.SeedGenerator.getSystemEntropy(SeedGenerator.java:168)
        at sun.security.provider.SecureRandom$SeederHolder.<clinit>(SecureRandom.java:190)
        at sun.security.provider.SecureRandom.engineNextBytes(SecureRandom.java:210)
        at java.security.SecureRandom.nextBytes(SecureRandom.java:457)
        at java.util.UUID.randomUUID(UUID.java:145)
        at org.hibernate.id.uuid.StandardRandomStrategy.generateUUID(StandardRandomStrategy.java:52)
        at org.hibernate.id.UUIDGenerator.generate(UUIDGenerator.java:116)
        at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:492)
        at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1857)

ERROR MESSAGES/STACK TRACES THAT OCCUR :
Exception in thread "main" java.lang.Error: IP Helper Library GetIpAddrTable function failed
        at java.net.NetworkInterface.getAll(Native Method)
        at java.net.NetworkInterface.getNetworkInterfaces(NetworkInterface.java:343)
        at sun.security.provider.SeedGenerator.addNetworkAdapterInfo(SeedGenerator.java:233)
        at sun.security.provider.SeedGenerator.access$000(SeedGenerator.java:80)
        at sun.security.provider.SeedGenerator$1.run(SeedGenerator.java:183)
        at sun.security.provider.SeedGenerator$1.run(SeedGenerator.java:168)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.security.provider.SeedGenerator.getSystemEntropy(SeedGenerator.java:168)
        at sun.security.provider.SecureRandom$SeederHolder.<clinit>(SecureRandom.java:190)
        at sun.security.provider.SecureRandom.engineNextBytes(SecureRandom.java:210)
        at java.security.SecureRandom.nextBytes(SecureRandom.java:457)
        at java.util.UUID.randomUUID(UUID.java:145)
        at org.hibernate.id.uuid.StandardRandomStrategy.generateUUID(StandardRandomStrategy.java:52)
        at org.hibernate.id.UUIDGenerator.generate(UUIDGenerator.java:116)
        at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:492)
        at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1857)

REPRODUCIBILITY :
This bug can be reproduced always.