beansoft / iscratch-support

Supports for the Notes IDEA plugin
Other
6 stars 0 forks source link

java.lang.Throwable: Slow operations are prohibited on EDT #65

Open beansoft opened 9 months ago

beansoft commented 9 months ago

What happened

(please describe what you were doing when this exception occurred)

Version information

IntelliJ IDEA 2023.3.2 • Notes plugin com.github.beansoft.iscratch 2023.3.0

Exception

null

java.lang.Throwable: Slow operations are prohibited on EDT. See SlowOperations.assertSlowOperationsAreAllowed javadoc.
    at com.intellij.openapi.diagnostic.Logger.error(Logger.java:376)
    at com.intellij.util.SlowOperations.assertSlowOperationsAreAllowed(SlowOperations.java:101)
    at com.intellij.workspaceModel.core.fileIndex.impl.WorkspaceFileIndexDataImpl.ensureIsUpToDate(WorkspaceFileIndexDataImpl.kt:130)
    at com.intellij.workspaceModel.core.fileIndex.impl.WorkspaceFileIndexDataImpl.getFileInfo(WorkspaceFileIndexDataImpl.kt:75)
    at com.intellij.workspaceModel.core.fileIndex.impl.WorkspaceFileIndexImpl.getFileInfo(WorkspaceFileIndexImpl.kt:247)
    at com.intellij.openapi.roots.impl.ProjectFileIndexImpl.isUnderIgnored(ProjectFileIndexImpl.java:73)
    at com.intellij.openapi.roots.impl.ProjectFileIndexFacade.isUnderIgnored(ProjectFileIndexFacade.java:71)
    at com.intellij.psi.impl.file.impl.FileManagerImpl.isExcludedOrIgnored(FileManagerImpl.java:419)
    at com.intellij.psi.impl.file.impl.FileManagerImpl.findDirectoryImpl(FileManagerImpl.java:405)
    at com.intellij.psi.impl.file.impl.FileManagerImpl.findDirectory(FileManagerImpl.java:398)
    at com.intellij.psi.impl.PsiManagerImpl.findDirectory(PsiManagerImpl.java:175)
    at com.intellij.psi.AbstractFileViewProvider.shouldCreatePsi(AbstractFileViewProvider.java:89)
    at com.intellij.psi.MultiplePsiFilesPerDocumentFileViewProvider.getPsiInner(MultiplePsiFilesPerDocumentFileViewProvider.java:66)
    at com.intellij.psi.AbstractFileViewProvider.getPsi(AbstractFileViewProvider.java:185)
    at com.intellij.psi.impl.file.impl.FileManagerImpl.findFile(FileManagerImpl.java:360)
    at com.intellij.psi.impl.PsiManagerImpl.findFile(PsiManagerImpl.java:163)
    at com.github.beansoft.psi.PsiFileUtil.createPsiFile(PsiFileUtil.java:95)
    at com.github.beansoft.iscratch.panel.EmbedFileEditor.setText(EmbedFileEditor.java:533)
    at com.github.beansoft.iscratch.ui.CodeViewComponent.showCode(CodeViewComponent.java:1070)
    at com.github.beansoft.iscratch.ui.CodeViewComponent.showCode(CodeViewComponent.java:994)
    at com.github.beansoft.iscratch.ui.ScratchCodePane.showCode(ScratchCodePane.java:1736)
    at com.github.beansoft.iscratch.ui.ScratchCodePane.lambda$createNoteList$10(ScratchCodePane.java:1253)
    at java.desktop/javax.swing.JList.fireSelectionValueChanged(JList.java:1831)
    at java.desktop/javax.swing.JList$ListSelectionHandler.valueChanged(JList.java:1845)
    at java.desktop/javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionModel.java:224)
    at java.desktop/javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionModel.java:204)
    at java.desktop/javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionModel.java:251)
    at java.desktop/javax.swing.DefaultListSelectionModel.changeSelection(DefaultListSelectionModel.java:448)
    at java.desktop/javax.swing.DefaultListSelectionModel.changeSelection(DefaultListSelectionModel.java:458)
    at java.desktop/javax.swing.DefaultListSelectionModel.setSelectionInterval(DefaultListSelectionModel.java:502)
    at java.desktop/javax.swing.JList.setSelectedIndex(JList.java:2232)
    at com.github.beansoft.iscratch.ui.list.CodeListUtil.trySelectFirst(CodeListUtil.java:22)
    at com.github.beansoft.iscratch.ui.ScratchCodePane.valueChanged(ScratchCodePane.java:1700)
    at java.desktop/javax.swing.JTree.fireValueChanged(JTree.java:3021)
    at java.desktop/javax.swing.JTree$TreeSelectionRedirector.valueChanged(JTree.java:3522)
    at java.desktop/javax.swing.tree.DefaultTreeSelectionModel.fireValueChanged(DefaultTreeSelectionModel.java:650)
    at com.intellij.ui.treeStructure.Tree$MySelectionModel.fireValueChanged(Tree.java:667)
    at java.desktop/javax.swing.tree.DefaultTreeSelectionModel.notifyPathChange(DefaultTreeSelectionModel.java:1120)
    at java.desktop/javax.swing.tree.DefaultTreeSelectionModel.setSelectionPaths(DefaultTreeSelectionModel.java:306)
    at java.desktop/javax.swing.JTree.setSelectionPaths(JTree.java:1723)
    at java.desktop/javax.swing.JTree.setSelectionRows(JTree.java:1806)
    at java.desktop/javax.swing.JTree.setSelectionRow(JTree.java:1781)
    at com.intellij.util.ui.tree.TreeUtil.lambda$showAndSelect$9(TreeUtil.java:633)
    at com.intellij.util.ui.tree.TreeUtil.showAndSelect(TreeUtil.java:668)
    at com.intellij.util.ui.tree.TreeUtil.showAndSelect(TreeUtil.java:590)
    at com.intellij.util.ui.tree.TreeUtil.showAndSelect(TreeUtil.java:586)
    at com.intellij.util.ui.tree.TreeUtil.selectPath(TreeUtil.java:511)
    at com.intellij.util.ui.tree.TreeUtil.selectInTree(TreeUtil.java:1022)
    at com.github.beansoft.iscratch.ui.tree.CodeTreeUtil.selectFolder(CodeTreeUtil.java:112)
    at com.github.beansoft.iscratch.ui.ScratchCodePane.lambda$focusTreeAndList$15(ScratchCodePane.java:1875)
    at com.intellij.openapi.application.TransactionGuardImpl.runWithWritingAllowed(TransactionGuardImpl.java:209)
    at com.intellij.openapi.application.TransactionGuardImpl.access$100(TransactionGuardImpl.java:22)
    at com.intellij.openapi.application.TransactionGuardImpl$1.run(TransactionGuardImpl.java:191)
    at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:843)
    at com.intellij.openapi.application.impl.ApplicationImpl$4.run(ApplicationImpl.java:463)
    at com.intellij.openapi.application.impl.RwLockHolder.runWithEnabledImplicitRead(RwLockHolder.kt:75)
    at com.intellij.openapi.application.impl.RwLockHolder.runWithImplicitRead(RwLockHolder.kt:67)
    at com.intellij.openapi.application.impl.ApplicationImpl.runWithImplicitRead(ApplicationImpl.java:1436)
    at com.intellij.openapi.application.impl.FlushQueue.doRun(FlushQueue.java:82)
    at com.intellij.openapi.application.impl.FlushQueue.runNextEvent(FlushQueue.java:124)
    at com.intellij.openapi.application.impl.FlushQueue.flushNow(FlushQueue.java:44)
    at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
    at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:792)
    at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:739)
    at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:733)
    at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
    at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:761)
    at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.kt:695)
    at com.intellij.ide.IdeEventQueue._dispatchEvent$lambda$12(IdeEventQueue.kt:589)
    at com.intellij.openapi.application.impl.RwLockHolder.runWithoutImplicitRead(RwLockHolder.kt:44)
    at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.kt:589)
    at com.intellij.ide.IdeEventQueue.access$_dispatchEvent(IdeEventQueue.kt:72)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:355)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:354)
    at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:793)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:354)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:349)
    at com.intellij.ide.IdeEventQueueKt.performActivity$lambda$1(IdeEventQueue.kt:1014)
    at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:106)
    at com.intellij.ide.IdeEventQueueKt.performActivity(IdeEventQueue.kt:1014)
    at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$7(IdeEventQueue.kt:349)
    at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:848)
    at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.kt:391)
    at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:207)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
    at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:92)
beansoft commented 9 months ago

The current fix in 2023.3 will cause Java notes created in a very big project with the wrong content. Will try to fix it in the future.