History | Log In     View a printable version of the current page.  
Issue Details (XML | Word | Printable)

Key: IDEADEV-13687
Type: Bug Bug
Status: Resolved Resolved
Resolution: Fixed
Priority: Critical Critical
Assignee: Alexey Kudravtsev
Reporter: Sascha Weinreuter
Votes: 2
Watchers: 1
Operations

If you were logged in you would be able to see more operations.
IDEA: Development

Deadlock during Analyse -> Inspect Code

Created: 23 Jan 07 20:42   Updated: 08 Feb 08 14:06
Component/s: Code Analysis. Inspection
Fix Version/s: Diana 8243, Selena 7.0.3

Original Estimate: Unknown Remaining Estimate: Unknown Time Spent: Unknown
File Attachments: 1. Zip Archive crashtest.zip (22 kb)
2. Text File thread-dump-7002.txt (43 kb)
3. Text File thread-dump.txt (61 kb)

Issue Links:
Duplicate
 
This issue is duplicated by:
IDEA-15960 IDEA crashes on AccessOfSystemPropert... Resolved
IDEA-16862 Idea hangs up during code inspection Resolved

Build: 6,656
Fixed in build: 8,152
Severity: High


 Description  « Hide
See the attached thread-dump. Maybe the Structural-Search inspection doesn't like to be run in the background?

 All   Comments   Work Log   Change History      Sort Order:
Sascha Weinreuter - 08 Jun 07 12:44
This still (or again?) happens in 7002. Now it even said that it's going to deadlock
[1522714]  ERROR - plication.impl.ApplicationImpl - Calling invokeAndWait from read-action leads to possible deadlock.
java.lang.Throwable
        at com.intellij.openapi.application.impl.ApplicationImpl.invokeAndWait(ApplicationImpl.java:89)
        at com.intellij.structuralsearch.impl.matcher.compiler.PatternCompiler.compilePattern(PatternCompiler.java:18)
        at com.intellij.structuralsearch.impl.matcher.MatcherImpl.precompileOptions(MatcherImpl.java:100)
        at com.intellij.structuralsearch.inspection.highlightTemplate.SSBasedInspection.projectOpened(SSBasedInspection.java:30)
        at com.intellij.codeInspection.ex.LocalInspectionToolWrapper.projectOpened(LocalInspectionToolWrapper.java:36)
        at com.intellij.codeInspection.ex.InspectionProfileWrapper.init(InspectionProfileWrapper.java:4)
        at com.intellij.codeInspection.ex.GlobalInspectionContextImpl$16.run(GlobalInspectionContextImpl.java:0)
        at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:159)
        at com.intellij.codeInspection.ex.GlobalInspectionContextImpl.initializeTools(GlobalInspectionContextImpl.java:122)
        at com.intellij.codeInspection.ex.GlobalInspectionContextImpl.a(GlobalInspectionContextImpl.java:452)
        at com.intellij.codeInspection.ex.GlobalInspectionContextImpl.access$1000(GlobalInspectionContextImpl.java:209)
        at com.intellij.codeInspection.ex.GlobalInspectionContextImpl$13.run(GlobalInspectionContextImpl.java:0)
        at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:5)
        at com.intellij.codeInspection.ex.GlobalInspectionContextImpl.b(GlobalInspectionContextImpl.java:289)
        at com.intellij.codeInspection.ex.GlobalInspectionContextImpl.access$400(GlobalInspectionContextImpl.java:195)
        at com.intellij.codeInspection.ex.GlobalInspectionContextImpl$10.run(GlobalInspectionContextImpl.java:0)
        at com.intellij.openapi.progress.impl.ProgressManagerImpl$4.run(ProgressManagerImpl.java:0)
        at com.intellij.openapi.progress.impl.ProgressManagerImpl$5.run(ProgressManagerImpl.java:0)
        at com.intellij.openapi.progress.impl.ProgressManagerImpl$2.run(ProgressManagerImpl.java:5)
        at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:5)
        at com.intellij.openapi.progress.impl.ProgressManagerImpl.runProcess(ProgressManagerImpl.java:80)
        at com.intellij.openapi.progress.impl.ProgressManagerImpl$6.run(ProgressManagerImpl.java:6)
        at com.intellij.openapi.application.impl.ApplicationImpl$4.run(ApplicationImpl.java:5)
        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:885)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
        at java.lang.Thread.run(Thread.java:619)
        at com.intellij.openapi.application.impl.ApplicationImpl$1$1.run(ApplicationImpl.java:4)

Kieron Wilkinson - 01 Nov 07 14:32
We are getting continuing issues with this and our inspections. Are you having trouble reproducing this? In case you are, and I am not surprised, since it took me a while to make a crashing combination, I am attaching a sample project which crashes, the log file, and our inspections profile which is causing the crash.

I also noticed that it doesn't crash as long as you do not make our inspections the project default, you just run the inspections in the Inspect Code option.

Please tell me if you can reproduce this your end with my files, because if not, I will do more work to make sure you can.

Thanks!


Kieron Wilkinson - 01 Nov 07 14:34
Project, log and inspections which reproduce this bug, as described in my other comment.

Kieron Wilkinson - 15 Nov 07 14:00
Okay, we think we now have this nailed!

The inspection that is causing this problem is the "Redundant suppression" inspection. If you have that turned on, with some suppressed inspections, AND you have that modified IDE inspection profile set as your default it crashes on Analyse / Inspect Code. If you have the project default set as the default, but choose the modified inspection profile to run under Analyse / Inspect Code, it works fine.