Uploaded image for project: 'Tools (JBoss Tools)'
  1. Tools (JBoss Tools)
  2. JBIDE-9917

Deadlock in JarAccessFactory.getJarAccess()

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • 3.3.0.M4
    • 3.3.0.M3
    • common
    • None
    • It may be reproduced by change/build operations with low probability, or in debugger with breakpoints in lines listed in the description.

      HashMap should never be invoked without synchronization if there is a chance that it may be accessed by different threads.

      Thread [Worker-0] (Suspended)
      HashMap<K,V>.get(Object) line: 320
      JarAccessFactory.getJarAccess(String, JarSystemImpl) line: 11
      JarSystemImpl.getJarAccess() line: 32
      JarSystemImpl.getChildByPathPart(String) line: 74
      JarSystemImpl(XModelObjectImpl).getChildByPath(String) line: 334
      TaglibMapping.findTldsInJar(XModelObject) line: 225
      TaglibMapping.findTldsInJars() line: 209
      TaglibMapping.revalidate(XModelObject) line: 85
      JSFWatcherContributor.updateProject() line: 49
      Watcher.updateAll() line: 106
      Watcher.access$0(Watcher) line: 89
      Watcher$WatcherRunnable.run() line: 47
      XJob.runInWorkspace(IProgressMonitor) line: 178
      XJob(InternalWorkspaceJob).run(IProgressMonitor) line: 38
      Worker.run() line: 54

      Thread [Worker-7] (Suspended)
      HashMap<K,V>.get(Object) line: 320
      JarAccessFactory.getJarAccess(String, JarSystemImpl) line: 11
      JarSystemImpl.getJarAccess() line: 32
      JarSystemImpl.getChildByPathPart(String) line: 74
      JarSystemImpl(XModelObjectImpl).getChildByPath(String) line: 334
      ClassPathMonitor.process() line: 68
      JSF2ProjectBuilder.build(int, Map<String,String>, IProgressMonitor) line: 101
      KbBuilder.buildExtensionModels(int, Map, IProgressMonitor) line: 191
      KbBuilder.build(int, Map<String,String>, IProgressMonitor) line: 136
      BuildManager$2.run() line: 728
      SafeRunner.run(ISafeRunnable) line: 42
      BuildManager.basicBuild(int, IncrementalProjectBuilder, Map<String,String>, MultiStatus, IProgressMonitor) line: 199
      BuildManager.basicBuild(IBuildConfiguration, int, IBuildContext, ICommand[], MultiStatus, IProgressMonitor) line: 239
      BuildManager$1.run() line: 292
      SafeRunner.run(ISafeRunnable) line: 42
      BuildManager.basicBuild(IBuildConfiguration, int, IBuildContext, MultiStatus, IProgressMonitor) line: 295
      BuildManager.basicBuildLoop(IBuildConfiguration[], IBuildConfiguration[], int, MultiStatus, IProgressMonitor) line: 351
      BuildManager.build(IBuildConfiguration[], IBuildConfiguration[], int, IProgressMonitor) line: 374
      AutoBuildJob.doBuild(IProgressMonitor) line: 143
      AutoBuildJob.run(IProgressMonitor) line: 241
      Worker.run() line: 54

            scabanovich Viacheslav Kabanovich (Inactive)
            scabanovich Viacheslav Kabanovich (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: