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.
Summary: | cvs: IllegalStateException thrown | ||
---|---|---|---|
Product: | obsolete | Reporter: | Pavel Rehak <prehak> |
Component: | vcscore | Assignee: | Martin Entlicher <mentlicher> |
Status: | CLOSED FIXED | ||
Severity: | blocker | CC: | pnejedly |
Priority: | P2 | Keywords: | RANDOM, REGRESSION, THREAD |
Version: | 4.x | ||
Hardware: | All | ||
OS: | All | ||
Issue Type: | DEFECT | Exception Reporter: | |
Attachments: |
exception
Another ISE originated in RequestProcessor. The textual patch. |
Description
Pavel Rehak
2005-03-29 12:32:54 UTC
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 |