rikvdkleij / intellij-haskell

IntelliJ plugin for Haskell
https://rikvdkleij.github.io/intellij-haskell/
Apache License 2.0
1.31k stars 94 forks source link

Unhandled com.intellij.psi.PsiInvalidElementAccessException #509

Closed develop7 closed 4 years ago

develop7 commented 4 years ago

ij-haskell 1.0.0beta-58

Stack trace ``` com.intellij.psi.PsiInvalidElementAccessException: Element class com.intellij.psi.impl.source.tree.CompositeElement of type HS_VARID (class intellij.haskell.psi.stubs.types.HaskellVaridStubElementType) at com.intellij.psi.PsiInvalidElementAccessException.createByNode(PsiInvalidElementAccessException.java:96) at com.intellij.psi.impl.source.SubstrateRef$2.getContainingFile(SubstrateRef.java:101) at com.intellij.extapi.psi.StubBasedPsiElementBase.getContainingFile(StubBasedPsiElementBase.java:253) at com.intellij.extapi.psi.StubBasedPsiElementBase.isPhysical(StubBasedPsiElementBase.java:296) at com.intellij.psi.util.PsiTreeUtil.processElements(PsiTreeUtil.java:873) at com.intellij.psi.util.PsiTreeUtil.processElements(PsiTreeUtil.java:878) at com.intellij.psi.util.PsiTreeUtil.processElements(PsiTreeUtil.java:878) at com.intellij.psi.util.PsiTreeUtil.processElements(PsiTreeUtil.java:878) at com.intellij.psi.util.PsiTreeUtil.findChildrenOfAnyType(PsiTreeUtil.java:334) at com.intellij.psi.util.PsiTreeUtil.findChildrenOfType(PsiTreeUtil.java:297) at intellij.haskell.psi.HaskellPsiUtil$.findQualifiedNamedElements(HaskellPsiUtil.scala:87) at intellij.haskell.external.component.StackProjectManager$$anon$2$$anon$3.$anonfun$invalidateTypeInfo$4(StackProjectManager.scala:316) at scala.Option.map(Option.scala:242) at intellij.haskell.external.component.StackProjectManager$$anon$2$$anon$3.invalidateTypeInfo(StackProjectManager.scala:316) at intellij.haskell.external.component.StackProjectManager$$anon$2$$anon$3.childReplaced(StackProjectManager.scala:321) at com.intellij.psi.impl.PsiManagerImpl.fireEvent(PsiManagerImpl.java:383) at com.intellij.psi.impl.PsiManagerImpl.childReplaced(PsiManagerImpl.java:279) at com.intellij.pom.tree.events.impl.ChangeInfoImpl.childReplaced(ChangeInfoImpl.java:122) at com.intellij.pom.tree.events.impl.ChangeInfoImpl.fireEvent(ChangeInfoImpl.java:80) at com.intellij.pom.tree.events.impl.TreeChangeImpl.fireEvents(TreeChangeImpl.java:161) at com.intellij.pom.tree.events.impl.TreeChangeEventImpl.fireEvents(TreeChangeEventImpl.java:150) at com.intellij.pom.wrappers.PsiEventWrapperAspect.sendAfterEvents(PsiEventWrapperAspect.java:64) at com.intellij.pom.wrappers.PsiEventWrapperAspect.update(PsiEventWrapperAspect.java:52) at com.intellij.pom.core.impl.PomModelImpl.lambda$null$1(PomModelImpl.java:181) at com.intellij.psi.impl.DebugUtil.performPsiModification(DebugUtil.java:564) at com.intellij.pom.core.impl.PomModelImpl.lambda$runTransaction$2(PomModelImpl.java:148) at com.intellij.openapi.progress.impl.CoreProgressManager.executeNonCancelableSection(CoreProgressManager.java:186) at com.intellij.pom.core.impl.PomModelImpl.runTransaction(PomModelImpl.java:138) at com.intellij.psi.impl.DiffLog.lambda$doActualPsiChange$0(DiffLog.java:267) at com.intellij.psi.impl.source.codeStyle.CodeStyleManagerImpl.lambda$performActionWithFormatterDisabled$6(CodeStyleManagerImpl.java:696) at com.intellij.psi.impl.source.PostprocessReformattingAspect.disablePostprocessFormattingInside(PostprocessReformattingAspect.java:108) at com.intellij.psi.impl.source.codeStyle.CodeStyleManagerImpl.lambda$performActionWithFormatterDisabled$8(CodeStyleManagerImpl.java:725) at com.intellij.formatting.FormatterImpl.runWithFormattingDisabled(FormatterImpl.java:682) at com.intellij.psi.impl.source.codeStyle.CodeStyleManagerImpl.performActionWithFormatterDisabled(CodeStyleManagerImpl.java:723) at com.intellij.psi.impl.source.codeStyle.CodeStyleManagerImpl.performActionWithFormatterDisabled(CodeStyleManagerImpl.java:695) at com.intellij.psi.impl.DiffLog.doActualPsiChange(DiffLog.java:255) at com.intellij.psi.impl.DocumentCommitThread.lambda$doCommit$8(DocumentCommitThread.java:704) at com.intellij.psi.impl.PsiDocumentManagerBase.commitToExistingPsi(PsiDocumentManagerBase.java:419) at com.intellij.psi.impl.PsiDocumentManagerBase.lambda$finishCommitInWriteAction$4(PsiDocumentManagerBase.java:391) at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:585) at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:531) at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:59) at com.intellij.openapi.progress.impl.CoreProgressManager.executeNonCancelableSection(CoreProgressManager.java:191) at com.intellij.psi.impl.PsiDocumentManagerBase.finishCommitInWriteAction(PsiDocumentManagerBase.java:386) at com.intellij.psi.impl.PsiDocumentManagerImpl.finishCommitInWriteAction(PsiDocumentManagerImpl.java:130) at com.intellij.psi.impl.PsiDocumentManagerBase$1.run(PsiDocumentManagerBase.java:347) at com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(ApplicationImpl.java:885) at com.intellij.psi.impl.PsiDocumentManagerBase.finishCommit(PsiDocumentManagerBase.java:354) at com.intellij.psi.impl.DocumentCommitThread.lambda$createFinishCommitInEDTRunnable$5(DocumentCommitThread.java:490) at com.intellij.openapi.application.TransactionGuardImpl.runSyncTransaction(TransactionGuardImpl.java:83) at com.intellij.openapi.application.TransactionGuardImpl.lambda$submitTransaction$1(TransactionGuardImpl.java:107) at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.doRun(LaterInvocator.java:441) at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.runNextEvent(LaterInvocator.java:424) at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.run(LaterInvocator.java:407) at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313) at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:776) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:727) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721) at java.base/java.security.AccessController.doPrivileged(Native Method) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:746) at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:908) at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:781) at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$8(IdeEventQueue.java:424) at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:698) at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:423) at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90) ```
Invalidation.trace ``` java.lang.Throwable at com.intellij.psi.impl.DebugUtil.startPsiModification(DebugUtil.java:531) at com.intellij.psi.impl.DebugUtil.performPsiModification(DebugUtil.java:562) at com.intellij.pom.core.impl.PomModelImpl.lambda$runTransaction$2(PomModelImpl.java:148) at com.intellij.openapi.progress.impl.CoreProgressManager.executeNonCancelableSection(CoreProgressManager.java:186) at com.intellij.pom.core.impl.PomModelImpl.runTransaction(PomModelImpl.java:138) at com.intellij.psi.impl.DiffLog.lambda$doActualPsiChange$0(DiffLog.java:267) at com.intellij.psi.impl.source.codeStyle.CodeStyleManagerImpl.lambda$performActionWithFormatterDisabled$6(CodeStyleManagerImpl.java:696) at com.intellij.psi.impl.source.PostprocessReformattingAspect.disablePostprocessFormattingInside(PostprocessReformattingAspect.java:108) at com.intellij.psi.impl.source.codeStyle.CodeStyleManagerImpl.lambda$performActionWithFormatterDisabled$8(CodeStyleManagerImpl.java:725) at com.intellij.formatting.FormatterImpl.runWithFormattingDisabled(FormatterImpl.java:682) at com.intellij.psi.impl.source.codeStyle.CodeStyleManagerImpl.performActionWithFormatterDisabled(CodeStyleManagerImpl.java:723) at com.intellij.psi.impl.source.codeStyle.CodeStyleManagerImpl.performActionWithFormatterDisabled(CodeStyleManagerImpl.java:695) at com.intellij.psi.impl.DiffLog.doActualPsiChange(DiffLog.java:255) at com.intellij.psi.impl.DocumentCommitThread.lambda$doCommit$8(DocumentCommitThread.java:704) at com.intellij.psi.impl.PsiDocumentManagerBase.commitToExistingPsi(PsiDocumentManagerBase.java:419) at com.intellij.psi.impl.PsiDocumentManagerBase.lambda$finishCommitInWriteAction$4(PsiDocumentManagerBase.java:391) at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:585) at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:531) at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:59) at com.intellij.openapi.progress.impl.CoreProgressManager.executeNonCancelableSection(CoreProgressManager.java:191) at com.intellij.psi.impl.PsiDocumentManagerBase.finishCommitInWriteAction(PsiDocumentManagerBase.java:386) at com.intellij.psi.impl.PsiDocumentManagerImpl.finishCommitInWriteAction(PsiDocumentManagerImpl.java:130) at com.intellij.psi.impl.PsiDocumentManagerBase$1.run(PsiDocumentManagerBase.java:347) at com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(ApplicationImpl.java:885) at com.intellij.psi.impl.PsiDocumentManagerBase.finishCommit(PsiDocumentManagerBase.java:354) at com.intellij.psi.impl.DocumentCommitThread.lambda$createFinishCommitInEDTRunnable$5(DocumentCommitThread.java:490) at com.intellij.openapi.application.TransactionGuardImpl.runSyncTransaction(TransactionGuardImpl.java:83) at com.intellij.openapi.application.TransactionGuardImpl.lambda$submitTransaction$1(TransactionGuardImpl.java:107) at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.doRun(LaterInvocator.java:441) at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.runNextEvent(LaterInvocator.java:424) at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.run(LaterInvocator.java:407) at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313) at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:776) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:727) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721) at java.base/java.security.AccessController.doPrivileged(Native Method) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:746) at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:908) at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:781) at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$8(IdeEventQueue.java:424) at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:698) at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:423) at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90) ```
rikvdkleij commented 4 years ago

Thanks for reporting!

develop7 commented 4 years ago

@rikvdkleij thanks for the swift fix!

rikvdkleij commented 4 years ago

Please reopen if still an issue.