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.
Summary: | Deadlock when inspecting variables in Ant debugger session | ||
---|---|---|---|
Product: | projects | Reporter: | Jiri Kovalsky <jkovalsky> |
Component: | Ant | Assignee: | Jesse Glick <jglick> |
Status: | VERIFIED FIXED | ||
Severity: | blocker | Keywords: | THREAD |
Priority: | P2 | ||
Version: | 6.x | ||
Hardware: | All | ||
OS: | All | ||
Issue Type: | DEFECT | Exception Reporter: | |
Bug Depends on: | |||
Bug Blocks: | 84591 | ||
Attachments: |
Full thread dump containing the detected deadlock.
Screenshot of my IDE when it freezed. |
Description
Jiri Kovalsky
2006-09-12 14:52:04 UTC
Created attachment 33827 [details]
Full thread dump containing the detected deadlock.
Created attachment 33828 [details]
Screenshot of my IDE when it freezed.
Please note that this is a Milestone 3 build showstopper. This is a bug in ant debugger. Working on a fix... This deadlock is caused by a tooltip annotation. But while I'm investigating this more deeply, it looks like evaluation in Watches is enough. The evaluation was never completed for me. There are two locks being acquired in different order, one in NbBuildLogger and the second in AntDebugger. We need to assure that NbBuildLogger will not be called under our lock. This looks like a conceptual problem. Did this ever worked? The same problem seems to be in NetBeans 5.5. The issue is that the AntLogger SPI was never designed for something like AntEvent.evaluate to be called from a different thread from the one with the logger callback. While AntDebugger could probably arrange to always evaluate tooltips from the same thread, this would be cumbersome. Anyway it seems that the way the Ant debugger works, it would prevent other non-debugged builds from running. So I will try to remove some unnecessary synchronization in NbBuildLogger. Checking in test/unit/src/org/apache/tools/ant/module/spi/AntLoggerTest.java; /shared/data/ccvs/repository/ant/test/unit/src/org/apache/tools/ant/module/spi/AntLoggerTest.java,v <-- AntLoggerTest.java new revision: 1.16; previous revision: 1.15 done Checking in src-bridge/org/apache/tools/ant/module/bridge/impl/NbBuildLogger.java; /shared/data/ccvs/repository/ant/src-bridge/org/apache/tools/ant/module/bridge/impl/NbBuildLogger.java,v <-- NbBuildLogger.java new revision: 1.29; previous revision: 1.28 done This seems to be fixed indeed in the latest development build #200609141800 of NetBeans 6.0. |