That would be amazing Frank :-)  

I do not think we have a JIRA report yet (in part because we are trying to sort 
out how to describe the problem). I will check out our notes 
(http://udig.refractions.net/confluence/display/UDIG/1.3.3) … no JIRA yet.



--  
Jody Garnett


On Monday, 14 January 2013 at 6:15 PM, Frank Gasdorf wrote:

> 2013/1/13 Jody Garnett <[email protected] 
> (mailto:[email protected])>:
> > My prime suspects are:
> > - Blackboard (this is where the deadlock is occurring)
> > - EditFeature (this is the class that was introduced to make form work
> > easier)
> >  
>  
>  
> I the past we had several issues with blackboardImpl and I created a
> pull request in the past that fixed issues if different threads
> accessing the blackboard:
> * https://github.com/uDig/udig-platform/pull/132 (Fix for threading
> Issues for UDIG-1930 and UDIG-1931)
> * https://github.com/uDig/udig-platform/pull/135 (used ReentrantLock
> instead of synchronized blocks)
>  
> Looking at the stacktrace that has been posted last year it seems to
> be the ReentrantLock comming from pull request 135.
>  
> I'll have a look at it later this week. Do we got an JIRA report already?
>  
> Cheers,
> Frank
>  
>  
>  
>  
> 2012/11/22 Jody Garnett <[email protected] 
> (mailto:[email protected])>:
> > I have run into the following deadlock when testing walkthrough 2 (page
> > HoleCutter.html ):
> >  
> > Thread [Worker-0] (Suspended)
> > Unsafe.park(boolean, long) line: not available [native method]
> > LockSupport.park(Object) line: 156
> > ReentrantLock$NonfairSync(AbstractQueuedSynchronizer).parkAndCheckInterrupt()
> > line: 811
> > ReentrantLock$NonfairSync(AbstractQueuedSynchronizer).acquireQueued(AbstractQueuedSynchronizer$Node,
> > int) line: 842
> > ReentrantLock$NonfairSync(AbstractQueuedSynchronizer).acquire(int) line:
> > 1178
> > ReentrantLock$NonfairSync.lock() line: 186
> > ReentrantLock.lock() line: 262
> > BlackboardImpl.get(String) line: 212
> > EditToolHandler.getLock() line: 358
> > EditToolHandler.getCurrentState() line: 347
> > SelectFeatureBehaviour.isValid(EditToolHandler, MapMouseEvent, EventType)
> > line: 141
> > EventBehaviourCommand.execute(IProgressMonitor) line: 54
> > CommandManager$Executor.execute(Command, IProgressMonitor) line: 395
> > CommandManager$Executor.run(IProgressMonitor, CommandManager$Request) line:
> > 326
> > CommandManager$Executor.run(IProgressMonitor) line: 312
> > Worker.run() line: 54
> >  
> > Thread [pool-1-thread-1] (Suspended)
> > Unsafe.park(boolean, long) line: not available [native method]
> > LockSupport.park(Object) line: 156
> > AbstractQueuedSynchronizer$ConditionObject.await() line: 1987
> > LinkedBlockingQueue<E>.take() line: 399
> > ThreadPoolExecutor.getTask() line: 947
> > ThreadPoolExecutor$Worker.run() line: 907
> > Thread.run() line: 680
> >  
> >  
> > --
> > Jody Garnett
> >  
> >  
> > _______________________________________________
> > User-friendly Desktop Internet GIS (uDig)
> > http://udig.refractions.net
> > http://lists.refractions.net/mailman/listinfo/udig-devel
> >  
>  
> _______________________________________________
> User-friendly Desktop Internet GIS (uDig)
> http://udig.refractions.net
> http://lists.refractions.net/mailman/listinfo/udig-devel
>  
>  


_______________________________________________
User-friendly Desktop Internet GIS (uDig)
http://udig.refractions.net
http://lists.refractions.net/mailman/listinfo/udig-devel

Reply via email to