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.
Product Version = NetBeans IDE Dev (Build 200503281924) Operating System = Windows XP version 5.1 running on x86 Java; VM; Vendor = 1.6.0-ea; Java HotSpot(TM) Client VM 1.6.0-ea-b21; Sun --- It happens randomly, usually from Versioning view. Steps to reproduce not 100%): (a bit complicated thought) 1) Start with clean userdir 2) Versioning | Versioning Manager | Add | CVS 3) Use clear workdir, pserver = qa-linux-s6 user = test pwd = test port = 2401 repository = /usr/local/CVSrepo command line CVS client 4) Select perform checkout, select all modules. 5) After checkout is finished switch to the Versioning view and expand JavaApplication2/src/javaapplication2 and expand all versionins of Main.java Exception is thrown.
Created attachment 21192 [details] exception
VCS doing something illegal?
Possibly yes, I'll check how the nodes and children are created...
This might be a regression, leaving still TM 4.1, will check the code...
Occurs quite often, not much problem to reproduce. Really this is a regression in how the revision nodes are created.
Created attachment 21546 [details] Another ISE originated in RequestProcessor.
This is a threading issue, there is a race condition due to missing synchronizatoin. The getNodeDelegate() can be run concurrently from AWT and RequestProcessor threads. Upgrading to P2, it occurs quite often, is annoying and the fix is simple: /cvs/vcscore/src/org/netbeans/modules/vcscore/versioning/RevisionList.java,v <-- RevisionList.java new revision: 1.10; previous revision: 1.9
Created attachment 21547 [details] The textual patch.
Verified with build 200504101930.
nodeDelegatesWithoutChildren, nodeDelegatesWithChildren and existingChildren sync is OK, REVIEWED. A little improvement would be to sync remove*() too. But these are not in reality called.
Thanks for the review. The additional synchronization is added in trunk for sure: /cvs/vcscore/src/org/netbeans/modules/vcscore/versioning/RevisionList.java,v <-- RevisionList.java new revision: 1.11; previous revision: 1.10 The fix is merged into release41 branch: /cvs/vcscore/src/org/netbeans/modules/vcscore/versioning/RevisionList.java,v <-- RevisionList.java new revision: 1.9.4.1; previous revision: 1.9