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.
Development build #200208160100 of NetBeans 4.0 Windows 2000 with JDK 1.4.1 RC build #19 Description: ============ I apologize for not having any reproducable steps but I am filing this upon Martin's request. Please take a look at the attached thread dump. What I did: =========== 1. Used approx. 7 days old CVS filesystem. 2. Invoked "CVS|Remove" and confirmed the dialog. 3. Removed has finished and then IDE got frozen.
Created attachment 7112 [details] The thread dump I talked about.
Thanks Jiri for filling this. It's important to have this archived to know what to be aware of. The problem is at two places: 1) In VcsFileSystem.children() we scan scheduled files, which are stored in attributes. 2) in VcsFileSystem.outputStream() we decide which files to backup by whether they are important or not. This is O.K., but the "importantness" is stored in file references. Because access to FileObjects and their attributes is synchronized (but with different locks), their respective access in one direction in one thread, while other direction in another thread leads to the deadlock. Thus we need to avoid accessing FO attributes while having locked FileObjects and accessing FileObjects while having locked FO attributes.
Target Milestone -> 4.0: This needs to be solved in 4.0 release.
Fixed in the main trunk. When deciding whether to create backup file or not, check for the file importantness at last. /cvs/vcscore/src/org/netbeans/modules/vcscore/VcsFileSystem.java,v <-- VcsFileSystem.java new revision: 1.190; previous revision: 1.189
No deadlock during "CVS|Remove" recently. I assume it got really fixed. Verified in development build #200211080100 of NetBeans 4.0.
Hi. This issue is marked as 3.4.1_CANDIDATE. It means that it should be integrated into release341 one branch. The plan at http://www.netbeans.org/devhome/docs/releases/34/index.html expected beta1 to be produced on Dec01. That did not happen due to a lot of outstanding not integrated candidates like this one. Would it be possible to spend few minutes by backporting this fix? Thank you in advance.
Merged into release341 branch. /cvs/vcscore/src/org/netbeans/modules/vcscore/VcsFileSystem.java,v <-- VcsFileSystem.java new revision: 1.178.6.3.4.4; previous revision: 1.178.6.3.4.3
*** Issue 29285 has been marked as a duplicate of this issue. ***
Resolved for 3.4.x or earlier, no new info since then -> closing.