maxfilatov / phpuaca

PHPUnit Autocomplete Assistant (PhpStorm plugin)
50 stars 26 forks source link

The plugin causes freezes in PhpStorm #19

Open amakhrov opened 8 years ago

amakhrov commented 8 years ago

Bug reports at PhpStorm issue tracker:

The freezing issue was constantly reproduced until I disabled the plugin - after that it has gone.

@maxfilatov do you have any ideas on that?

Jean85 commented 8 years ago

I can confirm this.

Jean85 commented 8 years ago

Up! No news? I should mention that I'm using PHPStorm 2016.1

maxfilatov commented 8 years ago

@Jean85 @amakhrov try to use latest builds please, problem should be fixed

amakhrov commented 8 years ago

@maxfilatov thanks! Right now works well, but since the issue appeared somewhat randomly, need more time for testing. Hopefully, it's resolved completely )

Jean85 commented 8 years ago

Thanks! I will try it immediately, I'm using PHPStorm 2016.1.2; I will report back any problems.

amakhrov commented 8 years ago

@maxfilatov looks like the issue still happens in some cases. Below is the data from idea.log. Also here is the thread dump of the same event: threadDump-20160606-152450.txt

2016-06-06 15:18:18,145 [98644577]  ERROR - il.indexing.FileBasedIndexImpl - Accessing 'php.class.shortName' during processing 'php.method.shortName'. Nested different indices processing may cause deadlock 
java.lang.Throwable
    at com.intellij.openapi.diagnostic.Logger.error(Logger.java:127)
    at com.intellij.util.indexing.IndexAccessValidator.checkAccessingIndexDuringOtherIndexProcessing(IndexAccessValidator.java:37)
    at com.intellij.psi.stubs.StubIndexImpl.a(StubIndexImpl.java:248)
    at com.intellij.psi.stubs.StubIndexImpl.processElements(StubIndexImpl.java:224)
    at com.intellij.psi.stubs.StubIndex.getElements(StubIndex.java:145)
    at com.intellij.psi.stubs.StubIndex.getElements(StubIndex.java:135)
    at com.jetbrains.php.PhpIndexImpl.getByName(PhpIndexImpl.java:515)
    at com.jetbrains.php.PhpIndexImpl.getByFQN(PhpIndexImpl.java:495)
    at com.jetbrains.php.PhpIndexImpl.getClassesByFQN(PhpIndexImpl.java:525)
    at com.jetbrains.php.PhpIndexImpl.getAnyByFQN(PhpIndexImpl.java:541)
    at com.jetbrains.php.lang.psi.elements.impl.MemberReferenceImpl.resolveGlobal(MemberReferenceImpl.java:176)
    at com.phpuaca.util.PhpMethodResolver.resolveByMethodReference(PhpMethodResolver.java:15)
    at com.phpuaca.completion.PHPUnitTypeProvider.getType(PHPUnitTypeProvider.java:54)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo$1.internalCompute(PhpTypeInfo.java:43)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo$1.internalCompute(PhpTypeInfo.java:37)
    at com.intellij.openapi.util.Computable$NotNullCachedComputable.compute(Computable.java:52)
    at com.intellij.openapi.util.RecursionManager$2.doPreventingRecursion(RecursionManager.java:112)
    at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getType(PhpTypeInfo.java:37)
    at com.jetbrains.php.lang.psi.elements.impl.PhpReferenceImpl.getType(PhpReferenceImpl.java:207)
    at com.jetbrains.php.codeInsight.typeInference.PhpTypeInferenceUtil.inferType(PhpTypeInferenceUtil.java:202)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeAnalyserVisitor.addTypeFromExpression(PhpTypeAnalyserVisitor.java:69)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeAnalyserVisitor.visitPhpVariable(PhpTypeAnalyserVisitor.java:145)
    at com.jetbrains.php.lang.psi.elements.impl.VariableImpl.accept(VariableImpl.java:118)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo$1.internalCompute(PhpTypeInfo.java:51)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo$1.internalCompute(PhpTypeInfo.java:37)
    at com.intellij.openapi.util.Computable$NotNullCachedComputable.compute(Computable.java:52)
    at com.intellij.openapi.util.RecursionManager$2.doPreventingRecursion(RecursionManager.java:112)
    at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getType(PhpTypeInfo.java:37)
    at com.jetbrains.php.lang.psi.elements.impl.VariableImpl.getInferredType(VariableImpl.java:617)
    at com.jetbrains.php.codeInsight.typeInference.PhpTypeAnalyzerProcessor.processAccessInstruction(PhpTypeAnalyzerProcessor.java:49)
    at com.jetbrains.php.codeInsight.typeInference.PhpVariableInferredTypeAnalyzerProcessor.processAccessVariableInstruction(PhpVariableInferredTypeAnalyzerProcessor.java:43)
    at com.jetbrains.php.codeInsight.controlFlow.instructions.impl.PhpAccessVariableInstructionImpl.process(PhpAccessVariableInstructionImpl.java:35)
    at com.jetbrains.php.codeInsight.controlFlow.PhpControlFlowUtil.processPredecessors(PhpControlFlowUtil.java:127)
    at com.jetbrains.php.codeInsight.controlFlow.PhpControlFlowUtil.processPredecessorsIgnoreInitialBackEdges(PhpControlFlowUtil.java:106)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeAnalyserVisitor.visitPhpVariable(PhpTypeAnalyserVisitor.java:158)
    at com.jetbrains.php.lang.psi.elements.impl.VariableImpl.accept(VariableImpl.java:118)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo$1.internalCompute(PhpTypeInfo.java:51)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo$1.internalCompute(PhpTypeInfo.java:37)
    at com.intellij.openapi.util.Computable$NotNullCachedComputable.compute(Computable.java:52)
    at com.intellij.openapi.util.RecursionManager$2.doPreventingRecursion(RecursionManager.java:112)
    at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getType(PhpTypeInfo.java:37)
    at com.jetbrains.php.lang.psi.elements.impl.VariableImpl.getInferredType(VariableImpl.java:617)
    at com.jetbrains.php.codeInsight.typeInference.PhpTypeAnalyzerProcessor.processAccessInstruction(PhpTypeAnalyzerProcessor.java:49)
    at com.jetbrains.php.codeInsight.typeInference.PhpVariableInferredTypeAnalyzerProcessor.processAccessVariableInstruction(PhpVariableInferredTypeAnalyzerProcessor.java:43)
    at com.jetbrains.php.codeInsight.controlFlow.instructions.impl.PhpAccessVariableInstructionImpl.process(PhpAccessVariableInstructionImpl.java:35)
    at com.jetbrains.php.codeInsight.controlFlow.PhpControlFlowUtil.processPredecessors(PhpControlFlowUtil.java:127)
    at com.jetbrains.php.codeInsight.controlFlow.PhpControlFlowUtil.processPredecessorsIgnoreInitialBackEdges(PhpControlFlowUtil.java:106)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeAnalyserVisitor.visitPhpVariable(PhpTypeAnalyserVisitor.java:158)
    at com.jetbrains.php.lang.psi.elements.impl.VariableImpl.accept(VariableImpl.java:118)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo$1.internalCompute(PhpTypeInfo.java:51)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo$1.internalCompute(PhpTypeInfo.java:37)
    at com.intellij.openapi.util.Computable$NotNullCachedComputable.compute(Computable.java:52)
    at com.intellij.openapi.util.RecursionManager$2.doPreventingRecursion(RecursionManager.java:112)
    at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getType(PhpTypeInfo.java:37)
    at com.jetbrains.php.codeInsight.typeInference.PhpTypeInferenceUtil.getType(PhpTypeInferenceUtil.java:230)
    at com.jetbrains.php.lang.psi.elements.impl.VariableImpl.getType(VariableImpl.java:598)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeAnalyserVisitor.visitPhpArrayAccessExpression(PhpTypeAnalyserVisitor.java:234)
    at com.jetbrains.php.lang.psi.elements.impl.ArrayAccessExpressionImpl.accept(ArrayAccessExpressionImpl.java:62)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo$1.internalCompute(PhpTypeInfo.java:51)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo$1.internalCompute(PhpTypeInfo.java:37)
    at com.intellij.openapi.util.Computable$NotNullCachedComputable.compute(Computable.java:52)
    at com.intellij.openapi.util.RecursionManager$2.doPreventingRecursion(RecursionManager.java:112)
    at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getType(PhpTypeInfo.java:37)
    at com.jetbrains.php.codeInsight.typeInference.PhpTypeInferenceUtil.getType(PhpTypeInferenceUtil.java:230)
    at com.jetbrains.php.lang.psi.elements.impl.ArrayAccessExpressionImpl.getType(ArrayAccessExpressionImpl.java:39)
    at com.jetbrains.php.lang.psi.resolve.types.PhpType.add(PhpType.java:150)
    at com.jetbrains.php.lang.psi.elements.impl.FunctionImpl.visitReturn(FunctionImpl.java:193)
    at com.jetbrains.php.lang.psi.elements.impl.FunctionImpl.scanTree(FunctionImpl.java:218)
    at com.jetbrains.php.lang.psi.elements.impl.FunctionImpl.getLocalType(FunctionImpl.java:158)
    at com.jetbrains.php.lang.psi.elements.impl.MethodImpl.getLocalType(MethodImpl.java:235)
    at com.jetbrains.php.lang.psi.stubs.PhpMethodElementType.createStub(PhpMethodElementType.java:32)
    at com.jetbrains.php.lang.psi.stubs.PhpMethodElementType.createStub(PhpMethodElementType.java:17)
    at com.intellij.psi.stubs.DefaultStubBuilder.a(DefaultStubBuilder.java:60)
    at com.intellij.psi.stubs.DefaultStubBuilder.buildStubTree(DefaultStubBuilder.java:36)
    at com.intellij.psi.impl.source.PsiFileImpl.calcStubTree(PsiFileImpl.java:1039)
    at com.intellij.psi.stubs.StubProcessingHelperBase.processStubsInFile(StubProcessingHelperBase.java:75)
    at com.intellij.psi.stubs.StubProcessingHelperBase.processStubsInFile(StubProcessingHelperBase.java:52)
    at com.intellij.psi.stubs.StubIndexImpl$1.process(StubIndexImpl.java:232)
    at com.intellij.psi.stubs.StubIndexImpl$StubIdListContainerAction.perform(StubIndexImpl.java:593)
    at com.intellij.psi.stubs.StubIndexImpl$StubIdListContainerAction.perform(StubIndexImpl.java:581)
    at com.intellij.util.indexing.ValueContainer.forEach(ValueContainer.java:81)
    at com.intellij.psi.stubs.StubIndexImpl.a(StubIndexImpl.java:258)
    at com.intellij.psi.stubs.StubIndexImpl.processElements(StubIndexImpl.java:224)
    at com.intellij.psi.stubs.StubIndex.getElements(StubIndex.java:145)
    at com.intellij.psi.stubs.StubIndex.getElements(StubIndex.java:135)
    at com.jetbrains.php.navigation.PhpGoToSymbolContributor.getItemsByName(PhpGoToSymbolContributor.java:49)
    at com.intellij.ide.util.gotoByName.ContributorsBasedGotoByModel$3.process(ContributorsBasedGotoByModel.java:221)
    at com.intellij.ide.util.gotoByName.ContributorsBasedGotoByModel$3.process(ContributorsBasedGotoByModel.java:195)
    at com.intellij.concurrency.ApplierCompleter.c(ApplierCompleter.java:128)
    at com.intellij.concurrency.ApplierCompleter.access$000(ApplierCompleter.java:44)
    at com.intellij.concurrency.ApplierCompleter$1.run(ApplierCompleter.java:91)
    at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1178)
    at com.intellij.concurrency.ApplierCompleter$2.run(ApplierCompleter.java:100)
    at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:446)
    at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:443)
    at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:392)
    at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:54)
    at com.intellij.concurrency.ApplierCompleter.a(ApplierCompleter.java:112)
    at com.intellij.concurrency.ApplierCompleter.compute(ApplierCompleter.java:88)
    at jsr166e.CountedCompleter.exec(CountedCompleter.java:684)
    at jsr166e.ForkJoinTask.doExec(ForkJoinTask.java:260)
    at jsr166e.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:858)
    at jsr166e.ForkJoinPool.scan(ForkJoinPool.java:1687)
    at jsr166e.ForkJoinPool.runWorker(ForkJoinPool.java:1642)
    at jsr166e.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:108)
2016-06-06 15:18:18,146 [98644578]  ERROR - il.indexing.FileBasedIndexImpl - PhpStorm 2016.1.2  Build #PS-145.1616.3 
2016-06-06 15:18:18,146 [98644578]  ERROR - il.indexing.FileBasedIndexImpl - JDK: 1.8.0_76-release 
2016-06-06 15:18:18,146 [98644578]  ERROR - il.indexing.FileBasedIndexImpl - VM: OpenJDK 64-Bit Server VM 
2016-06-06 15:18:18,146 [98644578]  ERROR - il.indexing.FileBasedIndexImpl - Vendor: JetBrains s.r.o 
2016-06-06 15:18:18,146 [98644578]  ERROR - il.indexing.FileBasedIndexImpl - OS: Mac OS X 
2016-06-06 15:18:18,146 [98644578]  ERROR - il.indexing.FileBasedIndexImpl - Last Action: SearchEverywhere 
Jean85 commented 8 years ago

I can confirm that the freeze is still happening. I will disable the plugin for now.

maxfilatov commented 8 years ago

https://github.com/maxfilatov/phpuaca/releases/download/1.3.4-unstable-1/phpuaca-1.3.4-unstable-1.jar next try

amakhrov commented 8 years ago

@maxfilatov thanks! I've installed it, let's see if the issue occurs again.

amakhrov commented 8 years ago

@maxfilatov so far so good, no freezes since the last update. Still keeping an eye on it :)

Jean85 commented 8 years ago

Great! Can you ping us when this version gets published?

dbalabka commented 8 years ago

@maxfilatov I have faced with following error in EAP version of PHPstorm with latest 1.3.4-unstable. Seems it's realated.

Not sure is it installed correclty because my PHPStorm always shows 1.3.4 version for some reason. image

PhpStorm 2016.2 EAP
Build #PS-162.1120.13, built on June 29, 2016
PhpStorm EAP User
Expiration date: July 29, 2016
JRE: 1.8.0_76-release-b216 x86
JVM: OpenJDK Server VM by JetBrains s.r.o
16:43   Throwable: Accessing 'php.class.shortName' during processing 'php.namespace.shortName'. Nested different indices processing may cause deadlock

16:47   Throwable: Accessing 'php.trait.shortName' during processing 'php.class.shortName'. Nested different indices processing may cause deadlock

16:47   Throwable: Accessing 'php.interface.shortName' during processing 'php.class.shortName'. Nested different indices processing may cause deadlock

16:47   Throwable: Accessing 'php.interface.shortName' during processing 'php.class.shortName'. Nested different indices processing may cause deadlock

16:48   Throwable: Accessing 'php.class.shortName' during processing 'php.inheritors'. Nested different indices processing may cause deadlock

Here is one exmaple:

Accessing 'php.class.shortName' during processing 'php.namespace.shortName'. Nested different indices processing may cause deadlock
java.lang.Throwable
    at com.intellij.openapi.diagnostic.Logger.error(Logger.java:127)
    at com.intellij.util.indexing.IndexAccessValidator.checkAccessingIndexDuringOtherIndexProcessing(IndexAccessValidator.java:37)
    at com.intellij.psi.stubs.StubIndexImpl.a(StubIndexImpl.java:340)
    at com.intellij.psi.stubs.StubIndexImpl.processElements(StubIndexImpl.java:316)
    at com.intellij.psi.stubs.StubIndex.getElements(StubIndex.java:146)
    at com.intellij.psi.stubs.StubIndex.getElements(StubIndex.java:135)
    at com.jetbrains.php.PhpIndexImpl.getByName(PhpIndexImpl.java:548)
    at com.jetbrains.php.PhpIndexImpl.getByFQN(PhpIndexImpl.java:528)
    at com.jetbrains.php.PhpIndexImpl.getClassesByFQN(PhpIndexImpl.java:558)
    at com.jetbrains.php.PhpIndexImpl.getAnyByFQN(PhpIndexImpl.java:574)
    at com.jetbrains.php.PhpIndexImpl.getBySignatureInternal(PhpIndexImpl.java:403)
    at com.jetbrains.php.PhpIndexImpl.getBySignature(PhpIndexImpl.java:315)
    at com.jetbrains.php.PhpIndexImpl.getClasses(PhpIndexImpl.java:484)
    at com.jetbrains.php.PhpIndexImpl.getBySignatureInternal(PhpIndexImpl.java:422)
    at com.jetbrains.php.PhpIndexImpl.getBySignature(PhpIndexImpl.java:315)
    at com.jetbrains.php.PhpIndexImpl.completeType(PhpIndexImpl.java:80)
    at com.jetbrains.php.lang.psi.resolve.types.PhpType.globalLocationAware(PhpType.java:393)
    at com.jetbrains.php.lang.psi.elements.impl.MemberReferenceImpl.resolveGlobal(MemberReferenceImpl.java:145)
    at com.phpuaca.util.PhpMethodResolver.resolveByMethodReference(PhpMethodResolver.java:15)
    at com.phpuaca.completion.PHPUnitTypeProvider.getType(PHPUnitTypeProvider.java:53)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo$1.internalCompute(PhpTypeInfo.java:50)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo$1.internalCompute(PhpTypeInfo.java:38)
    at com.intellij.openapi.util.Computable$NotNullCachedComputable.compute(Computable.java:52)
    at com.intellij.openapi.util.RecursionManager$2.doPreventingRecursion(RecursionManager.java:112)
    at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getType(PhpTypeInfo.java:38)
    at com.jetbrains.php.lang.psi.elements.impl.PhpReferenceImpl.getType(PhpReferenceImpl.java:207)
    at com.jetbrains.php.codeInsight.typeInference.PhpTypeInferenceUtil.inferType(PhpTypeInferenceUtil.java:206)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeAnalyserVisitor.addTypeFromExpression(PhpTypeAnalyserVisitor.java:69)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeAnalyserVisitor.visitPhpVariable(PhpTypeAnalyserVisitor.java:145)
    at com.jetbrains.php.lang.psi.elements.impl.VariableImpl.accept(VariableImpl.java:118)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo$1.internalCompute(PhpTypeInfo.java:58)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo$1.internalCompute(PhpTypeInfo.java:38)
    at com.intellij.openapi.util.Computable$NotNullCachedComputable.compute(Computable.java:52)
    at com.intellij.openapi.util.RecursionManager$2.doPreventingRecursion(RecursionManager.java:112)
    at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo.getType(PhpTypeInfo.java:38)
    at com.jetbrains.php.codeInsight.typeInference.PhpTypeInferenceUtil.getType(PhpTypeInferenceUtil.java:235)
    at com.jetbrains.php.lang.psi.elements.impl.VariableImpl.getType(VariableImpl.java:598)
    at com.jetbrains.php.lang.psi.elements.impl.FunctionImpl.visitReturn(FunctionImpl.java:200)
    at com.jetbrains.php.lang.psi.elements.impl.FunctionImpl.scanTree(FunctionImpl.java:232)
    at com.jetbrains.php.lang.psi.elements.impl.FunctionImpl.getInferredType(FunctionImpl.java:172)
    at com.jetbrains.php.lang.psi.elements.impl.FunctionImpl.getLocalType(FunctionImpl.java:144)
    at com.jetbrains.php.lang.psi.elements.impl.MethodImpl.getLocalType(MethodImpl.java:230)
    at com.jetbrains.php.lang.psi.stubs.PhpMethodElementType.createStub(PhpMethodElementType.java:32)
    at com.jetbrains.php.lang.psi.stubs.PhpMethodElementType.createStub(PhpMethodElementType.java:17)
    at com.intellij.psi.stubs.DefaultStubBuilder.buildStubTreeFor(DefaultStubBuilder.java:74)
    at com.intellij.psi.stubs.DefaultStubBuilder.buildStubTree(DefaultStubBuilder.java:36)
    at com.intellij.psi.impl.source.PsiFileImpl.calcStubTree(PsiFileImpl.java:1063)
    at com.intellij.psi.stubs.StubProcessingHelperBase.processStubsInFile(StubProcessingHelperBase.java:76)
    at com.intellij.psi.stubs.StubProcessingHelperBase.processStubsInFile(StubProcessingHelperBase.java:52)
    at com.intellij.psi.stubs.StubIndexImpl$2.process(StubIndexImpl.java:324)
    at com.intellij.psi.stubs.StubIndexImpl$StubIdListContainerAction.perform(StubIndexImpl.java:675)
    at com.intellij.psi.stubs.StubIndexImpl$StubIdListContainerAction.perform(StubIndexImpl.java:663)
    at com.intellij.util.indexing.ValueContainer.forEach(ValueContainer.java:81)
    at com.intellij.psi.stubs.StubIndexImpl.a(StubIndexImpl.java:350)
    at com.intellij.psi.stubs.StubIndexImpl.processElements(StubIndexImpl.java:316)
    at com.intellij.psi.stubs.StubIndex.getElements(StubIndex.java:146)
    at com.intellij.psi.stubs.StubIndex.getElements(StubIndex.java:135)
    at com.jetbrains.php.PhpIndexImpl.getNamespacesByName(PhpIndexImpl.java:110)
    at com.jetbrains.php.lang.psi.elements.impl.PhpNamespaceReferenceImpl$PhpNamespaceReferenceSegment.multiResolve(PhpNamespaceReferenceImpl.java:197)
    at com.jetbrains.php.lang.psi.elements.impl.PhpNamespaceReferenceImpl$PhpNamespaceReferenceSegment.resolve(PhpNamespaceReferenceImpl.java:218)
    at com.jetbrains.php.lang.inspections.codeSmell.PhpMethodOrClassCallIsNotCaseSensitiveInspection$1.visitPhpNamespaceReference(PhpMethodOrClassCallIsNotCaseSensitiveInspection.java:91)
    at com.jetbrains.php.lang.psi.elements.impl.PhpNamespaceReferenceImpl.accept(PhpNamespaceReferenceImpl.java:72)
    at com.intellij.codeInspection.InspectionEngine.acceptElements(InspectionEngine.java:81)
    at com.intellij.codeInspection.InspectionEngine.createVisitorAndAcceptElements(InspectionEngine.java:69)
    at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.a(LocalInspectionsPass.java:286)
    at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.a(LocalInspectionsPass.java:254)
    at com.intellij.concurrency.ApplierCompleter.b(ApplierCompleter.java:123)
    at com.intellij.concurrency.ApplierCompleter.a(ApplierCompleter.java:212)
    at com.intellij.concurrency.ApplierCompleter.b(ApplierCompleter.java:141)
    at com.intellij.concurrency.ApplierCompleter.a(ApplierCompleter.java:212)
    at com.intellij.concurrency.ApplierCompleter.b(ApplierCompleter.java:141)
    at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1033)
    at com.intellij.concurrency.ApplierCompleter.a(ApplierCompleter.java:96)
    at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:494)
    at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:443)
    at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:54)
    at com.intellij.concurrency.ApplierCompleter.b(ApplierCompleter.java:106)
    at com.intellij.concurrency.ApplierCompleter.compute(ApplierCompleter.java:91)
    at java.util.concurrent.CountedCompleter.exec(CountedCompleter.java:731)
    at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
    at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
    at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
    at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)
amakhrov commented 8 years ago

I can confrim this happens on the 2016.2 version.

2016-07-14 13:33:51,232 [69951659]  ERROR - il.indexing.FileBasedIndexImpl - Accessing 'php.interface.shortName' during processing 'php.class.shortName'. Nested different indices processing may cause deadlock
java.lang.Throwable
    at com.intellij.openapi.diagnostic.Logger.error(Logger.java:127)
    at com.intellij.util.indexing.IndexAccessValidator.checkAccessingIndexDuringOtherIndexProcessing(IndexAccessValidator.java:37)
    at com.intellij.psi.stubs.StubIndexImpl.a(StubIndexImpl.java:340)
    at com.intellij.psi.stubs.StubIndexImpl.processElements(StubIndexImpl.java:316)
    at com.intellij.psi.stubs.StubIndex.getElements(StubIndex.java:146)
    at com.intellij.psi.stubs.StubIndex.getElements(StubIndex.java:135)
    at com.jetbrains.php.PhpIndexImpl.getByName(PhpIndexImpl.java:553)
    at com.jetbrains.php.PhpIndexImpl.getByFQN(PhpIndexImpl.java:533)
    at com.jetbrains.php.PhpIndexImpl.getInterfacesByFQN(PhpIndexImpl.java:568)
    at com.jetbrains.php.lang.psi.elements.impl.PhpClassImpl.getImplementedInterfaces(PhpClassImpl.java:378)
    at com.jetbrains.php.PhpClassHierarchyUtils.processMembersInternal(PhpClassHierarchyUtils.java:263)
    at com.jetbrains.php.PhpClassHierarchyUtils.processMembersInternal(PhpClassHierarchyUtils.java:262)
    at com.jetbrains.php.PhpClassHierarchyUtils.processMethods(PhpClassHierarchyUtils.java:200)
    at com.jetbrains.php.lang.psi.elements.impl.PhpClassImpl.findMethodByNameInternal(PhpClassImpl.java:836)
    at com.jetbrains.php.lang.psi.elements.impl.PhpClassImpl.findMethodByName(PhpClassImpl.java:818)
    at com.jetbrains.php.lang.psi.elements.impl.MethodReferenceImpl.resolveMember(MethodReferenceImpl.java:58)
    at com.jetbrains.php.lang.psi.elements.impl.MemberReferenceImpl.resolveGlobal(MemberReferenceImpl.java:165)
    at com.phpuaca.util.PhpMethodResolver.resolveByMethodReference(PhpMethodResolver.java:15)
    at com.phpuaca.completion.PHPUnitTypeProvider.getType(PHPUnitTypeProvider.java:53)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo$1.internalCompute(PhpTypeInfo.java:49)
    at com.jetbrains.php.lang.psi.resolve.types.PhpTypeInfo$1.internalCompute(PhpTypeInfo.java:39)

Full log: http://pastebin.com/S91SdWRQ