This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
IDE Versioning = IDE/1 spec=1.27 impl=200107311059 What is the MediaTracker waiting for?
Created attachment 2017 [details] Thread dump
Not sure, but shouldn't be org.openide.loaders.InstanceNode.toBufferedImage replanned into AWT?
How did you get this deadlock? Can I reproduce it somehow?
Petr, did you look at the sources of MediaTracker? I believe both MediaTrackers are waiting for images to be loaded, and didn't receive correct notifications from image loader, maybe image loader thread died somehow? I would say accessing MediaTracker from several threads is correct here, as MediaTracker is asynchronous itself (and methods are sync'd). It's beyond Netbeans scope IMO, needs consultation with JDK team.
Vitek: I can not reproduce it. Dafe: Exactly I am missing the thread. It must die somehow.
As long as it isn't reproducible I decrease priority to P3. If there are objections, please increase it again.
Got it including a symptom (an exception that killed the thread): [exec] MIMEResolverImpl.findMIMEType(org/netbeans/examples/lib/timerbean/timer.gif) [exec] Uncaught error fetching image: [exec] java.lang.NullPointerException [exec] at java.util.zip.Inflater.reset(Inflater.java:253) [exec] at java.util.zip.ZipFile.getInflater(ZipFile.java:249) [exec] at java.util.zip.ZipFile.getInputStream(ZipFile.java:197) [exec] at java.util.zip.ZipFile.getInputStream(ZipFile.java:174) [exec] at java.util.jar.JarFile.getInputStream(JarFile.java:307) [exec] at org.openide.filesystems.JarFileSystem.inputStream(JarFileSystem.java:450) [exec] at org.openide.filesystems.JarFileSystem$Impl.inputStream(JarFileSystem.java:1012) [exec] at org.openide.filesystems.AbstractFileObject.getInputStream(AbstractFileObject.java:165) [exec] at org.openide.filesystems.FileURL.getInputStream(FileURL.java:131) [exec] at sun.awt.image.URLImageSource.getDecoder(URLImageSource.java:112) [exec] at sun.awt.image.InputStreamImageSource.doFetch(InputStreamImageSource.java:251) [exec] at sun.awt.image.ImageFetcher.fetchloop(ImageFetcher.java:217) [exec] at sun.awt.image.ImageFetcher.run(ImageFetcher.java:185)
It looks like problem in JarFileSystem, Radek could you look at it, please.
Partly fixed: In JarFileSystem.getInputStream is NullPointerException catched and converted to FileNotFoundException. Then ImageFetcher won`t be killed because of uncaught exception - then MediaTracker.waitForID won`t be blocked. Then deadlock should not occure. Probably proper icon won`t be presented to user so I decrease priority to P4.
*** Issue 14538 has been marked as a duplicate of this issue. ***
Radek: in which build your fix should appear? I reproduce it on Friday "Q-build" testing [NBdev-200108170100] and fired the new issue #14538 Ales marked it as duplicate of this one.... If your fix has been already in Friday Q-build, could it be increased the priority to P3?
Petr Kuzel found that this bug is already reported in BugParade: 4336753. FYI: http://developer.java.sun.com/developer/bugParade/bugs/4336753.html.
*** Issue 14391 has been marked as a duplicate of this issue. ***
See also: http://developer.java.sun.com/developer/bugParade/bugs/4332685.html
*** Issue 20235 has been marked as a duplicate of this issue. ***
Resolved for 3.4.x or earlier, no new info since then -> verified.
Resolved for 3.4.x or earlier, no new info since then -> closing.