intellij-haxe icon indicating copy to clipboard operation
intellij-haxe copied to clipboard

plugin 1.4.28 exception

Open shaman4dd opened this issue 1 year ago • 1 comments

Hi. IntelliJ IDEA 2023.2.5, Haxe plugin 1.4.28

com.intellij.diagnostic.PluginException: Non-idempotent computation: it returns different results when invoked multiple times or on different threads:
  0 != 1
  which is length of [] and [FIELD_DECLARATION 'visible' "var visible(get, set) : Bool;"]

Recomputation gives [FIELD_DECLARATION 'visible' "var visible(get, set) : Bool;"] (class java.util.Collections$SingletonList) which is equivalent to 'fresh'
Recomputation log:
  Resolving REFERENCE_EXPRESSION "_raysAnim.visible":_raysAnim.visible:HaxeReferenceExpressionImpl of class com.intellij.plugins.haxe.lang.psi.impl.HaxeReferenceExpressionImpl [Plugin: com.intellij.plugins.haxe]
	at com.intellij.diagnostic.PluginProblemReporterImpl.createPluginExceptionByClass(PluginProblemReporterImpl.java:23)
	at com.intellij.diagnostic.PluginException.createByClass(PluginException.java:89)
	at com.intellij.util.IdempotenceChecker.reportFailure(IdempotenceChecker.java:97)
	at com.intellij.util.IdempotenceChecker.checkEquivalence(IdempotenceChecker.java:82)
	at com.intellij.psi.impl.source.resolve.ResolveCache.cache(ResolveCache.java:296)
	at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:224)
	at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:268)
	at com.intellij.plugins.haxe.lang.psi.HaxeResolver.resolve(HaxeResolver.java:100)
	at com.intellij.plugins.haxe.lang.psi.impl.HaxeReferenceImpl.doResolve(HaxeReferenceImpl.java:248)
	at com.intellij.plugins.haxe.lang.psi.impl.HaxeReferenceImpl.multiResolve(HaxeReferenceImpl.java:239)
	at com.intellij.plugins.haxe.lang.psi.impl.HaxeReferenceImpl.multiResolve(HaxeReferenceImpl.java:281)
	at com.intellij.plugins.haxe.lang.psi.impl.HaxeReferenceImpl.resolve(HaxeReferenceImpl.java:295)
	at com.intellij.plugins.haxe.lang.psi.impl.HaxeReferenceImpl.resolve(HaxeReferenceImpl.java:177)
	at com.intellij.plugins.haxe.ide.annotator.HaxeAnnotatingVisitor.checkDeprecatedVarCall(HaxeAnnotatingVisitor.java:122)
	at com.intellij.plugins.haxe.ide.annotator.HaxeAnnotatingVisitor.visitReferenceExpression(HaxeAnnotatingVisitor.java:50)
	at com.intellij.plugins.haxe.lang.psi.impl.HaxeReferenceExpressionImpl.accept(HaxeReferenceExpressionImpl.java:20)
	at com.intellij.plugins.haxe.lang.psi.impl.HaxeReferenceExpressionImpl.accept(HaxeReferenceExpressionImpl.java:25)
	at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:59)
	at com.intellij.plugins.haxe.ide.annotator.HaxeAnnotatingVisitor.visitElement(HaxeAnnotatingVisitor.java:106)
	at com.intellij.plugins.haxe.lang.psi.HaxeVisitor.visitPsiCompositeElement(HaxeVisitor.java:916)
	at com.intellij.plugins.haxe.lang.psi.HaxeVisitor.visitExpression(HaxeVisitor.java:235)
	at com.intellij.plugins.haxe.lang.psi.HaxeVisitor.visitBinaryExpression(HaxeVisitor.java:89)
	at com.intellij.plugins.haxe.lang.psi.HaxeVisitor.visitAssignExpression(HaxeVisitor.java:77)
	at com.intellij.plugins.haxe.lang.psi.impl.HaxeAssignExpressionImpl.accept(HaxeAssignExpressionImpl.java:21)
	at com.intellij.plugins.haxe.lang.psi.impl.HaxeAssignExpressionImpl.accept(HaxeAssignExpressionImpl.java:26)
	at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:59)
	at com.intellij.plugins.haxe.ide.annotator.HaxeAnnotatingVisitor.visitElement(HaxeAnnotatingVisitor.java:106)
	at com.intellij.plugins.haxe.lang.psi.HaxeVisitor.visitPsiCompositeElement(HaxeVisitor.java:916)
	at com.intellij.plugins.haxe.lang.psi.HaxeVisitor.visitBlockStatementPsiMixin(HaxeVisitor.java:832)
	at com.intellij.plugins.haxe.lang.psi.HaxeVisitor.visitBlockStatement(HaxeVisitor.java:101)
	at com.intellij.plugins.haxe.lang.psi.impl.HaxeBlockStatementImpl.accept(HaxeBlockStatementImpl.java:20)
	at com.intellij.plugins.haxe.lang.psi.impl.HaxeBlockStatementImpl.accept(HaxeBlockStatementImpl.java:25)
	at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:59)
	at com.intellij.plugins.haxe.ide.annotator.HaxeAnnotatingVisitor.visitElement(HaxeAnnotatingVisitor.java:106)
	at com.intellij.plugins.haxe.lang.psi.HaxeVisitor.visitPsiCompositeElement(HaxeVisitor.java:916)
	at com.intellij.plugins.haxe.lang.psi.HaxeVisitor.visitMethod(HaxeVisitor.java:864)
	at com.intellij.plugins.haxe.ide.annotator.HaxeAnnotatingVisitor.visitMethodDeclaration(HaxeAnnotatingVisitor.java:76)
	at com.intellij.plugins.haxe.lang.psi.impl.HaxeMethodDeclarationImpl.accept(HaxeMethodDeclarationImpl.java:20)
	at com.intellij.plugins.haxe.lang.psi.impl.HaxeMethodDeclarationImpl.accept(HaxeMethodDeclarationImpl.java:25)
	at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:59)
	at com.intellij.plugins.haxe.ide.annotator.HaxeAnnotatingVisitor.visitElement(HaxeAnnotatingVisitor.java:106)
	at com.intellij.plugins.haxe.lang.psi.HaxeVisitor.visitPsiCompositeElement(HaxeVisitor.java:916)
	at com.intellij.plugins.haxe.lang.psi.HaxeVisitor.visitClassBody(HaxeVisitor.java:128)
	at com.intellij.plugins.haxe.lang.psi.impl.HaxeClassBodyImpl.accept(HaxeClassBodyImpl.java:20)
	at com.intellij.plugins.haxe.lang.psi.impl.HaxeClassBodyImpl.accept(HaxeClassBodyImpl.java:25)
	at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:59)
	at com.intellij.plugins.haxe.ide.annotator.HaxeAnnotatingVisitor.visitElement(HaxeAnnotatingVisitor.java:106)
	at com.intellij.plugins.haxe.lang.psi.HaxeVisitor.visitPsiCompositeElement(HaxeVisitor.java:916)
	at com.intellij.plugins.haxe.lang.psi.HaxeVisitor.visitClass(HaxeVisitor.java:836)
	at com.intellij.plugins.haxe.lang.psi.HaxeVisitor.visitClassDeclaration(HaxeVisitor.java:132)
	at com.intellij.plugins.haxe.lang.psi.impl.HaxeClassDeclarationImpl.accept(HaxeClassDeclarationImpl.java:20)
	at com.intellij.plugins.haxe.lang.psi.impl.HaxeClassDeclarationImpl.accept(HaxeClassDeclarationImpl.java:25)
	at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:59)
	at com.intellij.plugins.haxe.ide.annotator.HaxeAnnotatingVisitor.visitElement(HaxeAnnotatingVisitor.java:106)
	at com.intellij.plugins.haxe.lang.psi.HaxeVisitor.visitPsiCompositeElement(HaxeVisitor.java:916)
	at com.intellij.plugins.haxe.lang.psi.HaxeVisitor.visitModule(HaxeVisitor.java:508)
	at com.intellij.plugins.haxe.lang.psi.impl.HaxeModuleImpl.accept(HaxeModuleImpl.java:20)
	at com.intellij.plugins.haxe.lang.psi.impl.HaxeModuleImpl.accept(HaxeModuleImpl.java:25)
	at com.intellij.psi.impl.source.tree.SharedImplUtil.acceptChildren(SharedImplUtil.java:183)
	at com.intellij.psi.impl.source.PsiFileImpl.acceptChildren(PsiFileImpl.java:747)
	at com.intellij.plugins.haxe.ide.annotator.HaxeAnnotatingVisitor.visitElement(HaxeAnnotatingVisitor.java:106)
	at com.intellij.psi.PsiElementVisitor.visitFile(PsiElementVisitor.java:51)
	at com.intellij.plugins.haxe.ide.inspections.HaxeUnresolvedSymbolInspection.checkFile(HaxeUnresolvedSymbolInspection.java:94)
	at com.intellij.codeInspection.LocalInspectionTool$1.visitFile(LocalInspectionTool.java:138)
	at com.intellij.extapi.psi.PsiFileBase.accept(PsiFileBase.java:59)
	at com.intellij.codeInsight.daemon.impl.InspectionRunner.lambda$processInOrder$10(InspectionRunner.java:322)
	at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1133)
	at com.intellij.codeInsight.daemon.impl.InspectionRunner.lambda$processInOrder$11(InspectionRunner.java:342)
	at com.intellij.openapi.application.impl.ReadMostlyRWLock.executeByImpatientReader(ReadMostlyRWLock.java:201)
	at com.intellij.openapi.application.impl.ApplicationImpl.executeByImpatientReader(ApplicationImpl.java:207)
	at com.intellij.codeInsight.daemon.impl.InspectionRunner.lambda$processInOrder$12(InspectionRunner.java:348)
	at com.intellij.util.AstLoadingFilter.forceAllowTreeLoading(AstLoadingFilter.java:159)
	at com.intellij.util.AstLoadingFilter.forceAllowTreeLoading(AstLoadingFilter.java:151)
	at com.intellij.codeInsight.daemon.impl.InspectionRunner.lambda$processInOrder$13(InspectionRunner.java:311)
	at com.intellij.util.AstLoadingFilter.disallowTreeLoading(AstLoadingFilter.java:130)
	at com.intellij.util.AstLoadingFilter.disallowTreeLoading(AstLoadingFilter.java:119)
	at com.intellij.codeInsight.daemon.impl.InspectionRunner.lambda$processInOrder$14(InspectionRunner.java:311)
	at com.intellij.concurrency.JobLauncherImpl$1MyProcessQueueTask.lambda$call$0(JobLauncherImpl.java:314)
	at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$13(CoreProgressManager.java:604)
	at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:679)
	at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:635)
	at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:603)
	at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:61)
	at com.intellij.concurrency.JobLauncherImpl$1MyProcessQueueTask.call(JobLauncherImpl.java:299)
	at com.intellij.concurrency.JobLauncherImpl.processQueue(JobLauncherImpl.java:367)
	at com.intellij.codeInsight.daemon.impl.InspectionRunner.processInOrder(InspectionRunner.java:310)
	at com.intellij.codeInsight.daemon.impl.InspectionRunner.visitElements(InspectionRunner.java:285)
	at com.intellij.codeInsight.daemon.impl.InspectionRunner.lambda$inspect$4(InspectionRunner.java:129)
	at com.intellij.codeInspection.InspectionEngine.withSession(InspectionEngine.java:227)
	at com.intellij.codeInsight.daemon.impl.InspectionRunner.inspect(InspectionRunner.java:115)
	at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.collectInformationWithProgress(LocalInspectionsPass.java:113)
	at com.intellij.codeInsight.daemon.impl.ProgressableTextEditorHighlightingPass.doCollectInformation(ProgressableTextEditorHighlightingPass.java:95)
	at com.intellij.codeHighlighting.TextEditorHighlightingPass.collectInformation(TextEditorHighlightingPass.java:57)
	at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$doRun$1(PassExecutorService.java:390)
	at com.intellij.platform.diagnostic.telemetry.helpers.TraceKt.runWithSpanIgnoreThrows(trace.kt:77)
	at com.intellij.platform.diagnostic.telemetry.helpers.TraceUtil.runWithSpanThrows(TraceUtil.java:24)
	at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$doRun$2(PassExecutorService.java:386)
	at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1133)
	at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$doRun$3(PassExecutorService.java:377)
	at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$13(CoreProgressManager.java:604)
	at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:679)
	at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:635)
	at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:603)
	at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:61)
	at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.doRun(PassExecutorService.java:376)
	at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$run$0(PassExecutorService.java:352)
	at com.intellij.openapi.application.impl.ReadMostlyRWLock.executeByImpatientReader(ReadMostlyRWLock.java:201)
	at com.intellij.openapi.application.impl.ApplicationImpl.executeByImpatientReader(ApplicationImpl.java:207)
	at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.run(PassExecutorService.java:350)
	at com.intellij.concurrency.JobLauncherImpl$VoidForkJoinTask$1.exec(JobLauncherImpl.java:190)
	at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:373)
	at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1182)
	at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1655)
	at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1622)
	at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165)

shaman4dd avatar Feb 01 '24 19:02 shaman4dd

could you try 1.4.30 and see if the problem happens again ?

m0rkeulv avatar Feb 01 '24 21:02 m0rkeulv

i believe most Non-idempotent computation errors should be fixed now so closing this one.

m0rkeulv avatar Apr 22 '24 21:04 m0rkeulv