com.intellij.util.IncorrectOperationException: SingleRootFileViewProvider
Starting with IDEA 2018, I have severe problems with my file contents going out of sync with IDEA's internal model. We already had a similar issue here. What happens is that basically all the time I get a
File text mismatch: tree.length=5; psi.length=4; this=FILE; vp=SingleRootFileViewProvider{myVirtualFile=LightVirtualFile: /test.m, content=com.intellij.psi.AbstractFileViewProvider$PsiFileContent@7f777c9b}
I have created a detailed issue report on YouTrack, but maybe others ran into the same exception and know how to debug this. The two exceptions I see have the same underlying cause that the text of the ViewProvider is out of sync with the tree. Can anyone help me?
SingleRootFileViewProvider{myVirtualFile=LightVirtualFile: /test.m, content=com.intellij.psi.AbstractFileViewProvider$PsiFileContent@7f777c9b}
com.intellij.util.IncorrectOperationException: SingleRootFileViewProvider{myVirtualFile=LightVirtualFile: /test.m, content=com.intellij.psi.AbstractFileViewProvider$PsiFileContent@7f777c9b}
at com.intellij.psi.impl.BlockSupportImpl.makeFullParse(BlockSupportImpl.java:239)
at com.intellij.psi.impl.BlockSupportImpl.reparse(BlockSupportImpl.java:101)
at com.intellij.psi.impl.BlockSupportImpl.reparseRange(BlockSupportImpl.java:68)
at com.intellij.codeInsight.completion.OffsetsInFile.reparseFile(OffsetsInFile.kt:66)
at com.intellij.codeInsight.completion.OffsetsInFile.replaceInCopy(OffsetsInFile.kt:56)
at com.intellij.codeInsight.completion.CodeCompletionHandlerBase.insertDummyIdentifier(CodeCompletionHandlerBase.java:481)
at com.intellij.codeInsight.completion.CodeCompletionHandlerBase.prepareCompletionParameters(CodeCompletionHandlerBase.java:327)
at com.intellij.codeInsight.completion.CodeCompletionHandlerBase.lambda$null$2(CodeCompletionHandlerBase.java:291)
at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1134)
at com.intellij.codeInsight.completion.AsyncCompletion.tryReadOrCancel(CompletionThreading.java:181)
at com.intellij.codeInsight.completion.CodeCompletionHandlerBase.lambda$doComplete$3(CodeCompletionHandlerBase.java:290)
at com.intellij.codeInsight.completion.AsyncCompletion.lambda$null$0(CompletionThreading.java:108)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$1(CoreProgressManager.java:157)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:580)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:525)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:85)
at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:144)
at com.intellij.codeInsight.completion.AsyncCompletion.lambda$startThread$1(CompletionThreading.java:104)
at com.intellij.openapi.application.impl.ApplicationImpl$1.run(ApplicationImpl.java:305)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:266)
at java.util.concurrent.FutureTask.run(FutureTask.java)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Second Exception
File text mismatch: tree.length=5; psi.length=4; this=FILE; vp=SingleRootFileViewProvider{myVirtualFile=LightVirtualFile: /test.m, content=com.intellij.psi.AbstractFileViewProvider$PsiFileContent@7f777c9b}
java.lang.AssertionError: File text mismatch: tree.length=5; psi.length=4; this=FILE; vp=SingleRootFileViewProvider{myVirtualFile=LightVirtualFile: /test.m, content=com.intellij.psi.AbstractFileViewProvider$PsiFileContent@7f777c9b}
at com.intellij.psi.impl.source.PsiFileImpl.getText(PsiFileImpl.java:341)
at com.intellij.codeInsight.completion.CompletionAssertions.createFileTextAttachment(CompletionAssertions.java:110)
at com.intellij.codeInsight.completion.CompletionAssertions.assertCompletionPositionPsiConsistent(CompletionAssertions.java:152)
at com.intellij.codeInsight.completion.CodeCompletionHandlerBase.findCompletionPositionLeaf(CodeCompletionHandlerBase.java:354)
at com.intellij.codeInsight.completion.CodeCompletionHandlerBase.createCompletionParameters(CodeCompletionHandlerBase.java:345)
at com.intellij.codeInsight.completion.CodeCompletionHandlerBase.prepareCompletionParameters(CodeCompletionHandlerBase.java:336)
at com.intellij.codeInsight.completion.CodeCompletionHandlerBase.lambda$null$2(CodeCompletionHandlerBase.java:291)
at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1134)
at com.intellij.codeInsight.completion.AsyncCompletion.tryReadOrCancel(CompletionThreading.java:181)
at com.intellij.codeInsight.completion.CodeCompletionHandlerBase.lambda$doComplete$3(CodeCompletionHandlerBase.java:290)
at com.intellij.codeInsight.completion.AsyncCompletion.lambda$null$0(CompletionThreading.java:108)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$1(CoreProgressManager.java:157)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:580)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:525)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:85)
at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:144)
at com.intellij.codeInsight.completion.AsyncCompletion.lambda$startThread$1(CompletionThreading.java:104)
at com.intellij.openapi.application.impl.ApplicationImpl$1.run(ApplicationImpl.java:305)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:266)
at java.util.concurrent.FutureTask.run(FutureTask.java)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Please sign in to leave a comment.
I've replied in the ticket, thanks!