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 165515 - Deadlock on TaskProcessor.InternalLock between TaskProcessor.CurrentRequestReference & SourceCache
Summary: Deadlock on TaskProcessor.InternalLock between TaskProcessor.CurrentRequestRe...
Status: RESOLVED DUPLICATE of bug 165262
Alias: None
Product: editor
Classification: Unclassified
Component: Parsing & Indexing (show other bugs)
Version: 6.x
Hardware: All All
: P3 blocker (vote)
Assignee: Jan Jancura
URL:
Keywords: RANDOM, THREAD
Depends on:
Blocks:
 
Reported: 2009-05-19 16:20 UTC by Jesse Glick
Modified: 2009-05-20 12:23 UTC (History)
0 users

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 Jesse Glick 2009-05-19 16:20:54 UTC
090518, just switched editor tabs (I think). Looks like a pretty standard case of inconsistent lock ordering.

Found one Java-level deadlock:
=============================
"OpenIDE-request-processor-8":
  waiting to lock monitor 0x09d82fbc (object 0x6aa38b88, a java.lang.Object),
  which is held by "Parsing & Indexing Loop (090518)"
"Parsing & Indexing Loop (090518)":
  waiting to lock monitor 0x09e0614c (object 0x6aa3b878, a org.netbeans.modules.parsing.impl.TaskProcessor$InternalLock),
  which is held by "OpenIDE-request-processor-8"

Java stack information for the threads listed above:
===================================================
"OpenIDE-request-processor-8":
	at org.netbeans.modules.parsing.impl.TaskProcessor$CurrentRequestReference.cancelCompleted(TaskProcessor.java:1037)
	- waiting to lock <0x6aa38b88> (a java.lang.Object)
	at org.netbeans.modules.parsing.impl.TaskProcessor.handleAddRequests(TaskProcessor.java:501)
	at org.netbeans.modules.parsing.impl.TaskProcessor.addPhaseCompletionTasks(TaskProcessor.java:306)
	at org.netbeans.modules.parsing.impl.TaskProcessor.updatePhaseCompletionTask(TaskProcessor.java:400)
	- locked <0x6aa3b878> (a org.netbeans.modules.parsing.impl.TaskProcessor$InternalLock)
	at org.netbeans.modules.parsing.impl.SourceCache.scheduleTasks(SourceCache.java:425)
	at org.netbeans.modules.parsing.spi.Scheduler$1.run(Scheduler.java:155)
	at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:576)
	at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:1013)
"Parsing & Indexing Loop (090518)":
	at org.netbeans.modules.parsing.impl.SourceCache.getSnapshot(SourceCache.java:113)
	- waiting to lock <0x6aa3b878> (a org.netbeans.modules.parsing.impl.TaskProcessor$InternalLock)
	at org.netbeans.modules.parsing.impl.TaskProcessor$CurrentRequestReference.setCurrentTask(TaskProcessor.java:895)
	- locked <0x6aa38b88> (a java.lang.Object)
	at org.netbeans.modules.parsing.impl.TaskProcessor$CompilationJob.run(TaskProcessor.java:706)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
	at java.util.concurrent.FutureTask.run(FutureTask.java:138)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:619)

Found 1 deadlock.
Comment 1 Vitezslav Stejskal 2009-05-20 12:23:48 UTC
This is already fixed, please try newer build. Thanks

*** This issue has been marked as a duplicate of 165262 ***