-
Bug
-
Resolution: Fixed
-
P3
-
9
-
b29
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8084968 | emb-9 | Chris Hegarty | P3 | Resolved | Fixed | team |
During some recent refactoring, JDK-8025306, an unnecessary initialization of the InetAddress classes was added to the NIO implementation. InetAddress classes only need initialization for network channel types.
$ cat Test.java
public class Test {
public static void main(String[] args) throws Exception {
java.io.File file = new java.io.File(".");
java.nio.channels.FileChannel fc = java.nio.channels.FileChannel.open(file.toPath());
}
}
$ javac Test.java
$ jdk9/build/linux-x86_64-normal-server-release/jdk/bin/java -verbose:class Test| grep InetAddress
[Loaded java.net.InetAddress from jdk9/build/linux-x86_64-normal-server-release/jdk/modules/java.base] [Loaded java.net.InetAddress$1 from jdk9/build/linux-x86_64-normal-server-release/jdk/modules/java.base] [Loaded java.net.InetAddress$InetAddressHolder from jdk9/build/linux-x86_64-normal-server-release/jdk/modules/java.base]
[Loaded java.net.InetAddress$Cache from jdk9/build/linux-x86_64-normal-server-release/jdk/modules/java.base]
[Loaded java.net.InetAddress$Cache$Type from jdk9/build/linux-x86_64-normal-server-release/jdk/modules/java.base]
[Loaded java.net.InetAddressImplFactory from jdk9/build/linux-x86_64-normal-server-release/jdk/modules/java.base]
[Loaded java.net.InetAddressImpl from jdk9/build/linux-x86_64-normal-server-release/jdk/modules/java.base]
[Loaded java.net.InetAddress$2 from jdk9/build/linux-x86_64-normal-server-release/jdk/modules/java.base]
$ cat Test.java
public class Test {
public static void main(String[] args) throws Exception {
java.io.File file = new java.io.File(".");
java.nio.channels.FileChannel fc = java.nio.channels.FileChannel.open(file.toPath());
}
}
$ javac Test.java
$ jdk9/build/linux-x86_64-normal-server-release/jdk/bin/java -verbose:class Test| grep InetAddress
[Loaded java.net.InetAddress from jdk9/build/linux-x86_64-normal-server-release/jdk/modules/java.base] [Loaded java.net.InetAddress$1 from jdk9/build/linux-x86_64-normal-server-release/jdk/modules/java.base] [Loaded java.net.InetAddress$InetAddressHolder from jdk9/build/linux-x86_64-normal-server-release/jdk/modules/java.base]
[Loaded java.net.InetAddress$Cache from jdk9/build/linux-x86_64-normal-server-release/jdk/modules/java.base]
[Loaded java.net.InetAddress$Cache$Type from jdk9/build/linux-x86_64-normal-server-release/jdk/modules/java.base]
[Loaded java.net.InetAddressImplFactory from jdk9/build/linux-x86_64-normal-server-release/jdk/modules/java.base]
[Loaded java.net.InetAddressImpl from jdk9/build/linux-x86_64-normal-server-release/jdk/modules/java.base]
[Loaded java.net.InetAddress$2 from jdk9/build/linux-x86_64-normal-server-release/jdk/modules/java.base]
- backported by
-
JDK-8084968 (ch) Remove unnecessary initialization of InetAddress from FileChannel
-
- Resolved
-