자바 7u45에서 재미는 계속 제공합니다. 이번에는 webstart 내의 교착 상태입니다. 이것은 매우 일관되게 (매번) 대형 응용 프로그램 (~ 100 병)을 시작합니다.7u45 웹 스타트의 새로운 교착 상태 버그?
누군가 다른 사람에게이 문제를 신고하거나 해결 방법을 알고 있습니까? 1.7.0_40으로 되 돌리는 것 외에는? 나는 내 댓글에 언급 된 버그 보고서가 지금 받아 들여졌다
Found one Java-level deadlock:
=============================
"Java Web Start Main Thread":
waiting to lock monitor 0x066368bc (object 0x29e65428, a java.lang.Class),
which is held by "Finalizer"
"Finalizer":
waiting to lock monitor 0x00dbc954 (object 0x2a1b52b0, a com.sun.deploy.cache.CacheEntry),
which is held by "Java Web Start Main Thread"
Java stack information for the threads listed above:
===================================================
"Java Web Start Main Thread":
at com.sun.deploy.cache.MemoryCache.getLoadedResource(Unknown Source)
- waiting to lock <0x29e65428> (a java.lang.Class for com.sun.deploy.cache.MemoryCache)
at com.sun.deploy.cache.CachedJarFile.getCacheEntry(Unknown Source)
- locked <0x24810058> (a com.sun.deploy.cache.CachedJarFile)
at com.sun.deploy.cache.CachedJarFile.getManifest(Unknown Source)
- locked <0x24810058> (a com.sun.deploy.cache.CachedJarFile)
at com.sun.deploy.util.JarUtil.isBlobSigned(Unknown Source)
at com.sun.deploy.cache.CacheEntry.getJarFile(Unknown Source)
- locked <0x2a1b52b0> (a com.sun.deploy.cache.CacheEntry)
at com.sun.deploy.security.DeployManifestChecker.verify(Unknown Source)
at com.sun.javaws.security.AppPolicy.grantUnrestrictedAccess(Unknown Source)
at com.sun.javaws.security.JNLPSignedResourcesHelper.checkSignedResourcesHelper(Unknown Source)
at com.sun.javaws.security.JNLPSignedResourcesHelper.checkSignedResources(Unknown Source)
at com.sun.javaws.Launcher.prepareResources(Unknown Source)
at com.sun.javaws.Launcher.prepareAllResources(Unknown Source)
at com.sun.javaws.Launcher.prepareToLaunch(Unknown Source)
at com.sun.javaws.Launcher.prepareToLaunch(Unknown Source)
at com.sun.javaws.Launcher.launch(Unknown Source)
at com.sun.javaws.Main.launchApp(Unknown Source)
at com.sun.javaws.Main.continueInSecureThread(Unknown Source)
at com.sun.javaws.Main.access$000(Unknown Source)
at com.sun.javaws.Main$1.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
"Finalizer":
at com.sun.deploy.cache.CacheEntry.storageFilesExist(Unknown Source)
- waiting to lock <0x2a1b52b0> (a com.sun.deploy.cache.CacheEntry)
at com.sun.deploy.cache.MemoryCache.validateResource(Unknown Source)
at com.sun.deploy.cache.MemoryCache.getLoadedResource(Unknown Source)
- locked <0x29e65428> (a java.lang.Class for com.sun.deploy.cache.MemoryCache)
at com.sun.deploy.cache.CachedJarFile.isReferencedTo(Unknown Source)
at com.sun.deploy.cache.CachedJarFile.close(Unknown Source)
at java.util.zip.ZipFile.finalize(Unknown Source)
at java.lang.ref.Finalizer.invokeFinalizeMethod(Native Method)
at java.lang.ref.Finalizer.runFinalizer(Unknown Source)
at java.lang.ref.Finalizer.access$100(Unknown Source)
at java.lang.ref.Finalizer$FinalizerThread.run(Unknown Source)
Found 1 deadlock.
JVM/JRE/JDK 버그를 발견하면 Oracle에보고하십시오. http://www.oracle.com/technetwork/java/javase/bugreports-140511.html –
내가 계획했지만 버그 보고서에 대한 oracle의 의견은 단지 "감사합니다." 응답이 없으므로 '받아 들여야'버그를 볼 수 없습니다. 이 부분을 조금 더 살펴보고 7u40과 7u45 사이에서 deploy.jar에서 변경된 것을 찾을 수 있는지 확인했습니다. –
버그는 7u40과 7u45 사이의 deploy.jar의 CacheEntry 클래스에서 getJarFile()에 추가 된 새로운 코드 블록에서 비롯됩니다. 지금 버그를 제출했습니다. 운이 좋으면 버그를 공개 할 수도 있습니다. (Larry의 말을 듣고 있습니까?) –