Jörg Kubitz opened MSHARED-1122 and commented
On JDK 11 the result has been cached with in JVM.
Since JDK 12 the result is not cached anymore by default (See https://bugs.openjdk.java.net/browse/JDK-8207005) and now very slow on windows.
For org.apache.maven.shared.utils.io.FileUtils.copyFile(File, File)
please use java.nio.file.Files.isSameFile(Path, Path) instead.
note: it's needed to call file.exists() before using Files.isSameFile() or catch NoSuchFileException
@see
https://git.eclipse.org/r/c/platform/eclipse.platform.resources/+/180308/10/bundles/org.eclipse.core.filesystem/src/org/eclipse/core/internal/filesystem/local/LocalFile.java
for a similar fix.
Here is a screenshot of sampling eclipse showing getCanonicalPath() as a hotspot:
!image-2022-08-22-18-18-52-811.png!
Attachments:
Remote Links:
Backported to: maven-shared-utils-3.4.0
Jörg Kubitz opened MSHARED-1122 and commented
On JDK 11 the result has been cached with in JVM.
Since JDK 12 the result is not cached anymore by default (See https://bugs.openjdk.java.net/browse/JDK-8207005) and now very slow on windows.
For org.apache.maven.shared.utils.io.FileUtils.copyFile(File, File)
please use java.nio.file.Files.isSameFile(Path, Path) instead.
note: it's needed to call file.exists() before using Files.isSameFile() or catch NoSuchFileException
@seehttps://git.eclipse.org/r/c/platform/eclipse.platform.resources/+/180308/10/bundles/org.eclipse.core.filesystem/src/org/eclipse/core/internal/filesystem/local/LocalFile.java
for a similar fix.
Here is a screenshot of sampling eclipse showing getCanonicalPath() as a hotspot:
!image-2022-08-22-18-18-52-811.png!
Attachments:
Remote Links:
Backported to: maven-shared-utils-3.4.0