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.

Bug 14395 - Another ConcurentModificationException
Summary: Another ConcurentModificationException
Status: CLOSED FIXED
Alias: None
Product: versioncontrol
Classification: Unclassified
Component: CVS (show other bugs)
Version: 3.x
Hardware: PC Linux
: P3 blocker (vote)
Assignee: issues@versioncontrol
URL:
Keywords:
: 14606 18538 (view as bug list)
Depends on:
Blocks:
 
Reported: 2001-08-14 07:28 UTC by Jaroslav Tulach
Modified: 2007-01-04 17:14 UTC (History)
1 user (show)

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jaroslav Tulach 2001-08-14 07:28:56 UTC
What about not writing cache in writeObject. That is silly and moreover it does
not mean that the IDE is going down. Instead consider overwriting
moduleinstall.closing to clear all cache contents...



Tue Aug 14 08:25:20 CEST 2001: java.util.ConcurrentModificationException: Posted
StackTrace
Annotation: Exception occurred in Request Processor
org.openide.util.RequestProcessor$Holder: Posted StackTrace(task
org.openide.loaders.InstanceDataObject$SettingsInstance@23565 [-10481, 1, -1])
        at
org.openide.util.RequestProcessor$Task.createHolder(RequestProcessor.java:322)
        at
org.openide.util.RequestProcessor$Task.schedule(RequestProcessor.java:346)
        at
org.openide.loaders.InstanceDataObject$SettingsInstance.propertyChange(InstanceDataObject.java:1198)
        at
org.openide.util.WeakListener$PropertyChange.propertyChange(WeakListener.java:311)
        at
org.openide.filesystems.FileSystem.firePropertyChange(FileSystem.java:542)
        at org.openide.filesystems.FileSystem.setValid(FileSystem.java:103)
        at org.openide.filesystems.Repository.addFileSystem(Repository.java:160)
        at
org.netbeans.core.AutomountSupport.cycleFileSystems(AutomountSupport.java:353)
        at
org.netbeans.core.AutomountSupport.updateFileSystems(AutomountSupport.java:306)
        at
org.netbeans.core.AutomountSupport.taskFinished(AutomountSupport.java:125)
        at org.openide.util.Task.notifyFinished(Task.java:123)
        at
org.openide.loaders.FolderInstance.defaultProcessObjects(FolderInstance.java:477)
        at org.openide.loaders.FolderInstance.access$100(FolderInstance.java:45)
        at org.openide.loaders.FolderInstance$2.run(FolderInstance.java:419)
        at org.openide.util.Task.run(Task.java:152)
[catch] at
org.openide.util.RequestProcessor$ProcessorThread.run(RequestProcessor.java:611)
 
Tue Aug 14 08:25:20 CEST 2001: java.util.ConcurrentModificationException: null
java.util.ConcurrentModificationException
        at java.util.HashMap$HashIterator.next(HashMap.java:736)
        at
org.netbeans.modules.javacvs.caching.JavaCvsCache.writeAllToDisk(JavaCvsCache.java:184)
        at
org.netbeans.modules.javacvs.caching.CvsFsCache.saveToDisk(CvsFsCache.java:443)
        at
org.netbeans.modules.javacvs.JavaCvsFileSystem.writeObject(JavaCvsFileSystem.java:1144)
        at java.lang.reflect.Method.invoke(Native Method)
        at
java.io.ObjectOutputStream.invokeObjectWriter(ObjectOutputStream.java:1864)
        at java.io.ObjectOutputStream.outputObject(ObjectOutputStream.java:1210)
        at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:366)
        at
org.openide.loaders.XMLSettingsSupport.storeSerialData(XMLSettingsSupport.java:117)
        at
org.openide.loaders.XMLSettingsSupport.storeToXML10(XMLSettingsSupport.java:82)
        at
org.openide.loaders.InstanceDataObject$SettingsInstance.saveInstance(InstanceDataObject.java:1160)
        at
org.openide.loaders.InstanceDataObject$SettingsInstance.run(InstanceDataObject.java:1176)
        at org.openide.util.Task.run(Task.java:152)
[catch] at
org.openide.util.RequestProcessor$ProcessorThread.run(RequestProcessor.java:611)
Comment 1 Jaroslav Tulach 2001-08-14 08:09:51 UTC
Happened to me again when I tried to mount three filesystems at once
core/sc core/test/unit/src openide/src

Comment 2 Jaroslav Tulach 2001-08-14 08:29:25 UTC
Jan, it seems that the InstanceDataObject does not survive such
crashes correctly. Could you somehow make your code safer? I really
need filesystems not to crash during manipulation with services.

Comment 3 Milos Kleint 2001-08-14 09:15:24 UTC
fixed as suggested. The saving of the cache is moved to the
JavaCvsModuleInstall class. will appear in tomorrow's build (15/Aug/2001)
Comment 4 Jaroslav Tulach 2001-08-16 12:08:14 UTC
Another one when I left the IDE for lunch and returned back and tried
to expand a node in explorer. Are you sure you are not able to fix it?



Thu Aug 16 13:05:09 CEST 2001:


 java.util.ConcurrentModificationException: null
java.util.ConcurrentModificationException
        at java.util.HashMap$HashIterator.next(HashMap.java:736)
        at
org.netbeans.modules.javacvs.caching.CvsCacheDir.readFromDisk(CvsCacheDir.java:270)
        at
org.netbeans.modules.vcscore.cache.FileSystemCache.loadDir(FileSystemCache.java:182)
        at
org.netbeans.modules.javacvs.caching.JavaCvsCache.loadDir(JavaCvsCache.java:327)
        at
org.netbeans.modules.javacvs.caching.JavaCvsCache.getCacheFile(JavaCvsCache.java:88)
        at
org.netbeans.modules.vcscore.cache.CacheHandler.getCacheFile(CacheHandler.java:145)
        at
org.netbeans.modules.vcscore.cache.CacheHandler.getCacheFile(CacheHandler.java:133)
        at
org.netbeans.modules.cvsclient.caching.NbCvsFsCache.getStatus(NbCvsFsCache.java:133)
        at
org.netbeans.modules.javacvs.JavaCvsFileSystem$MyStatus.annotateName(JavaCvsFileSystem.java:688)
        at
org.openide.loaders.DataNode.getDisplayName(DataNode.java:146)
        at
org.openide.nodes.FilterNode.getDisplayName(FilterNode.java:247)
        at
org.openide.explorer.view.VisualizerNode.<init>(VisualizerNode.java:128)
        at
org.openide.explorer.view.VisualizerNode.getVisualizer(VisualizerNode.java:71)
        at
org.openide.explorer.view.VisualizerChildren.added(VisualizerChildren.java:65)
        at
org.openide.explorer.view.VisualizerEvent$Added.run(VisualizerEvent.java:83)
        at
org.openide.explorer.view.VisualizerNode$QP.run(VisualizerNode.java:464)
        at
java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:154)
[catch] at java.awt.EventQueue.dispatchEvent(EventQueue.java:337)
        at
java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:131)
        at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:98)
        at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
        at
java.awt.EventDispatchThread.run(EventDispatchThread.java:85)
Comment 5 Milos Kleint 2001-08-16 12:19:29 UTC
the only "real" way of fixing the neverending problems of caching the
vcs info would be to put it directly into the fileobject.
I'll add more synchronized blocks (I guess I know where the porblem
lies), however it's just fixing the aching problem. 

btw what are your settings and how many/whcih fs do you have mounted?
I've personally got a similar message just once.
Comment 6 Milos Kleint 2001-08-20 09:19:48 UTC
added synchronized blocks to moethods that add/remove items in the
cache. Now all the cases when the cache is manipulated should become
synchronized and the concurentMod exception should not be fired.
dev build (21/Aug/2001)
Comment 7 Milos Kleint 2001-08-21 15:39:18 UTC
*** Issue 14606 has been marked as a duplicate of this issue. ***
Comment 8 Jiri Kovalsky 2001-10-23 15:16:23 UTC
I don't see similar concurrent modification exceptions in recent deve-
lopment builds so I believe it got fixed. Verified in development bui-
ld of NetBeans 3.3 #200110230735.
Comment 9 Milos Kleint 2001-12-11 18:36:28 UTC
*** Issue 18538 has been marked as a duplicate of this issue. ***
Comment 10 Quality Engineering 2003-07-01 12:50:35 UTC
Resolved for 3.4.x or earlier, no new info since then -> closing.