Skip to content

IncorrectOperationException: Sorry but parent has already been disposed #8

@cypressious

Description

@cypressious

If the exception happens, this seems to cause the same hang during shutdown as in #5.

com.intellij.util.IncorrectOperationException: Sorry but parent: {pending.notification.update=true, FILE_KEY=file://C:/Users/Kirill/IdeaProjects/kotlin-jps/plugins/fir-plugin-prototype/testData/box/metaAnnotationFromLibrary.kt} (class org.jetbrains.kotlin.test.helper.ui.TestDataEditor) has already been disposed (see the cause for stacktrace) so the child: Editor: file://C:/Users/Kirill/IdeaProjects/kotlin-jps/plugins/fir-plugin-prototype/testData/box/metaAnnotationFromLibrary.kt (class com.intellij.openapi.fileEditor.impl.text.PsiAwareTextEditorImpl) will never be disposed
	at com.intellij.openapi.util.ObjectTree.register(ObjectTree.java:43)
	at com.intellij.openapi.util.Disposer.register(Disposer.java:143)
	at org.jetbrains.kotlin.test.helper.state.PreviewEditorState.findPreviewEditors(PreviewEditorState.kt:59)
	at org.jetbrains.kotlin.test.helper.state.PreviewEditorState.updatePreviewEditors(PreviewEditorState.kt:44)
	at org.jetbrains.kotlin.test.helper.ui.TestDataEditor$TestDataFileUpdateListener.updatePreviewList(TestDataEditor.kt:278)
	at com.intellij.util.concurrency.QueueProcessor.runSafely(QueueProcessor.java:241)
	at com.intellij.util.Alarm$Request.runSafely(Alarm.java:377)
	at com.intellij.util.Alarm$Request.run(Alarm.java:366)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at com.intellij.util.concurrency.SchedulingWrapper$MyScheduledFutureTask.run(SchedulingWrapper.java:272)
	at com.intellij.openapi.application.TransactionGuardImpl.runWithWritingAllowed(TransactionGuardImpl.java:209)
	at com.intellij.openapi.application.TransactionGuardImpl.access$100(TransactionGuardImpl.java:21)
	at com.intellij.openapi.application.TransactionGuardImpl$1.run(TransactionGuardImpl.java:191)
	at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:838)
	at com.intellij.openapi.application.impl.ApplicationImpl$3.run(ApplicationImpl.java:454)
	at com.intellij.openapi.application.impl.FlushQueue.doRun(FlushQueue.java:74)
	at com.intellij.openapi.application.impl.FlushQueue.runNextEvent(FlushQueue.java:114)
	at com.intellij.openapi.application.impl.FlushQueue.flushNow(FlushQueue.java:36)
	at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:779)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:730)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:724)
	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:749)
	at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:909)
	at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:756)
	at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$5(IdeEventQueue.java:437)
	at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:787)
	at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$6(IdeEventQueue.java:436)
	at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:105)
	at com.intellij.ide.IdeEventQueue.performActivity(IdeEventQueue.java:615)
	at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$7(IdeEventQueue.java:434)
	at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:838)
	at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:480)
	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)
Caused by: java.lang.Throwable
	at com.intellij.openapi.util.ObjectTree.runWithTrace(ObjectTree.java:99)
	at com.intellij.openapi.util.ObjectTree.executeAll(ObjectTree.java:159)
	at com.intellij.openapi.util.Disposer.dispose(Disposer.java:243)
	at com.intellij.openapi.util.Disposer.dispose(Disposer.java:231)
	at com.intellij.openapi.fileEditor.FileEditorProvider.disposeEditor(FileEditorProvider.java:51)
	at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.disposeComposite(FileEditorManagerImpl.java:1866)
	at com.intellij.openapi.fileEditor.impl.EditorWindow.closeFile$lambda$11(EditorWindow.kt:556)
	at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.runBulkTabChange(FileEditorManagerImpl.java:1904)
	at com.intellij.openapi.fileEditor.impl.EditorWindow.closeFile(EditorWindow.kt:538)
	at com.intellij.openapi.fileEditor.impl.EditorsSplitters.closeAllFiles(EditorsSplitters.kt:361)
	at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.runBulkTabChange(FileEditorManagerImpl.java:1904)
	at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.lambda$closeAllFiles$26(FileEditorManagerImpl.java:2197)
	at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:219)
	at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:174)
	at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:164)
	at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:150)
	at com.intellij.openapi.fileEditor.impl.FileEditorManagerImpl.closeAllFiles(FileEditorManagerImpl.java:2195)
	at com.intellij.tasks.context.OpenEditorsContextProvider.clearContext(OpenEditorsContextProvider.java:67)
	at com.intellij.tasks.context.WorkingContextManager.clearContext(WorkingContextManager.java:97)
	at com.intellij.tasks.context.BranchContextTracker.switchContext(BranchContextTracker.java:62)
	at com.intellij.tasks.context.BranchContextTracker.lambda$branchHasChanged$1(BranchContextTracker.java:57)
	at com.intellij.openapi.application.TransactionGuardImpl.submitTransaction(TransactionGuardImpl.java:45)
	at com.intellij.openapi.application.TransactionGuard.submitTransaction(TransactionGuard.java:68)
	at com.intellij.tasks.context.BranchContextTracker.branchHasChanged(BranchContextTracker.java:57)
	at com.intellij.util.messages.impl.MessageBusImplKt.invokeMethod(MessageBusImpl.kt:655)
	at com.intellij.util.messages.impl.MessageBusImplKt.invokeListener(MessageBusImpl.kt:621)
	at com.intellij.util.messages.impl.MessageBusImplKt.deliverMessage(MessageBusImpl.kt:395)
	at com.intellij.util.messages.impl.MessageBusImplKt.pumpWaiting(MessageBusImpl.kt:374)
	at com.intellij.util.messages.impl.MessageBusImplKt.access$pumpWaiting(MessageBusImpl.kt:1)
	at com.intellij.util.messages.impl.MessagePublisher.invoke(MessageBusImpl.kt:433)
	at jdk.proxy1/jdk.proxy1.$Proxy324.branchHasChanged(Unknown Source)
	at git4idea.branch.GitBranchOperation.lambda$notifyBranchHasChanged$3(GitBranchOperation.java:269)
	at com.intellij.openapi.application.TransactionGuardImpl.runWithWritingAllowed(TransactionGuardImpl.java:209)
	at com.intellij.openapi.application.TransactionGuardImpl.access$100(TransactionGuardImpl.java:21)
	at com.intellij.openapi.application.TransactionGuardImpl$1.run(TransactionGuardImpl.java:191)
	at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:838)
	at com.intellij.openapi.application.impl.ApplicationImpl$3.run(ApplicationImpl.java:454)
	at com.intellij.openapi.application.impl.LaterInvocator$1.run(LaterInvocator.java:97)
	... 26 more

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions