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.
I've tried commited multiple files into CVS repository and the NB freezed. Attached is thread dump.
Created attachment 10983 [details] Thread dump
I bet it's not reproducable, is it ?
Yes, you are right. I'm not sure if the bug report is so lame or you already know about this. :)
Big brother is watching you ! No, I am joking. Deadlocks usually happen intermittently.
I was watching through thread dump and I can see (I hope I'm interpretting this correclty) at org.openide.text.Line$Set.registerLine(Line.java:320) - locked <0x46404a10> (a java.util.WeakHashMap) at org.openide.text.DocumentLine$Set.getCurrent(DocumentLine.java:756) at org.netbeans.modules.tasklist.core.TLUtils.getLineByNumber(TLUtils.java:43) at org.netbeans.modules.tasklist.suggestions.SuggestionManagerImpl.caretUpdate(SuggestionMa so this is maybe taslklist's fault ? I'm reassinging. And I'm using NB 3.5.1 RC1.
Javacvs is definitely not causing this deadlock. After checkout, the committed files are refreshed, which caused the documents to be updated. It *might* be a fault of org.openide.text.* package that it does not provide the thread safety. Reassign to openide/text if this is not a fault of tasklist module.
Created attachment 12027 [details] The deadlock
registerLine() calls under lines-lock code that spawns (and wait for) next thread that wants to grab the lines-lock.
*** Issue 36787 has been marked as a duplicate of this issue. ***
Mila's comments from the other issue: Syncing RP is loading a doc but waits on "lines" while AWT holds "lines" but waits on doc loading. This problem exists in 3.5 and 3.5.1 and it will probably occur even with the current openide.text in the trunk. The recent patch that I've did will not solve this sort of problem. There might be a solution to sync on CloneableEditorSupport.getLock() instead of "lines" var in all the occurrences. As the CES.openDocument() waits on CES.getLock() (i.e. it releases the lock) the RP could proceed. But it's just an idea that would have to be tested.
Let's fix it for 3.6
Thanks to Yarda's fix of issue 37767, this deadlock can't occur anymore, because before locking the lines lock, a document read lock have to be acquired, which won't proceed until the document is fully loaded (loading goes through document writeLock).
Ok, I am verifying , no response for long time and I hope it's already fixed. Gregor if disagree reopen, thanks in advance .