intellij-plugin-save-actions icon indicating copy to clipboard operation
intellij-plugin-save-actions copied to clipboard

IntelliJ complains that "Refactorings should not be started inside write action"

Open Vrakfall opened this issue 7 years ago • 21 comments

Describe the bug I got this exception in the logs today, dunno when/what triggered it. I guess they added new checks with the recent update.

Refactorings should not be started inside write action
 because they start progress inside and any read action from the progress task would cause the deadlock

java.lang.Exception
	at com.intellij.refactoring.BaseRefactoringProcessor.run(BaseRefactoringProcessor.java:560)
	at com.siyeh.ig.performance.MethodMayBeStaticInspection$1.doFix(MethodMayBeStaticInspection.java:40)
	at com.siyeh.ig.InspectionGadgetsFix.applyFix(InspectionGadgetsFix.java:39)
	at com.siyeh.ig.InspectionGadgetsFix.applyFix(InspectionGadgetsFix.java:26)
	at com.dubreuia.processors.java.InspectionProcessor$InspectionWriteQuickFixesAction.writeQuickFixes(InspectionProcessor.java:94)
	at com.dubreuia.processors.java.InspectionProcessor$InspectionWriteQuickFixesAction.run(InspectionProcessor.java:83)
	at com.intellij.openapi.command.WriteCommandAction$Simple.run(WriteCommandAction.java:349)
	at com.intellij.openapi.application.RunResult.run(RunResult.java:35)
	at com.intellij.openapi.command.WriteCommandAction.lambda$null$1(WriteCommandAction.java:265)
	at com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(ApplicationImpl.java:1038)
	at com.intellij.openapi.command.WriteCommandAction.lambda$performWriteCommandAction$2(WriteCommandAction.java:264)
	at com.intellij.openapi.command.WriteCommandAction.lambda$doExecuteCommand$4(WriteCommandAction.java:322)
	at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:139)
	at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:107)
	at com.intellij.openapi.command.WriteCommandAction.doExecuteCommand(WriteCommandAction.java:324)
	at com.intellij.openapi.command.WriteCommandAction.performWriteCommandAction(WriteCommandAction.java:262)
	at com.intellij.openapi.command.WriteCommandAction.execute(WriteCommandAction.java:244)
	at com.dubreuia.processors.java.InspectionProcessor.lambda$run$0(InspectionProcessor.java:49)
	at com.intellij.openapi.application.TransactionGuardImpl$2.run(TransactionGuardImpl.java:315)
	at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.doRun(LaterInvocator.java:447)
	at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.runNextEvent(LaterInvocator.java:431)
	at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.run(LaterInvocator.java:415)
	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:762)
	at java.awt.EventQueue.access$500(EventQueue.java:98)
	at java.awt.EventQueue$3.run(EventQueue.java:715)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:732)
	at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:781)
	at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:722)
	at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:382)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

To Reproduce Use the plugin... Seriously, I don't know what triggered this.

Versions IntelliJ IDEA 2018.2.6 (Ultimate Edition) Build #IU-182.5107.16, built on November 6, 2018 JRE: 1.8.0_152-release-1380-b3 amd64 JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o Linux 4.19.1-arch1-1-ARCH

Vrakfall avatar Nov 16 '18 00:11 Vrakfall

I have the same issue with IntelliJ Ultimate Edition 2018.2.6, while running on Windows 7 Enterprise x64.

I think this bug came with the Save Actions 1.2.0, because I never had that kind of issue before.

DamCx avatar Nov 19 '18 07:11 DamCx

Oh god they're adding more and more checks that are not compatible with this plugin. Thanks for the heads up guys, I'll check it out.

See #113 and #109

dubreuia avatar Nov 19 '18 16:11 dubreuia

Erf, kinda what I expected. :/ You're welcome. Also happy debugging. :)

Vrakfall avatar Nov 19 '18 18:11 Vrakfall

Does that still happen?

dubreuia avatar Jan 17 '19 22:01 dubreuia

I'll re-activate the plugin and tell you if it happens again.

Vrakfall avatar Jan 18 '19 19:01 Vrakfall

@Vrakfall Wait a bit for me to release v1.3.0 I'll ping you when it's done

dubreuia avatar Jan 18 '19 20:01 dubreuia

@dubreuia Don't worry, I took it from the github releases.

Vrakfall avatar Jan 18 '19 23:01 Vrakfall

@Vrakfall I'm closing this for now, reopen if this specific issue resurfaces

dubreuia avatar Jan 20 '19 20:01 dubreuia

Released in https://github.com/dubreuia/intellij-plugin-save-actions/releases/tag/v1.3.0

dubreuia avatar Jan 20 '19 22:01 dubreuia

@dubreuia It is still happening with the 1.3.0 version of the plugin, on IntelliJ 2018.3.3 (both on CE and Ultimate)

DamCx avatar Jan 29 '19 09:01 DamCx

@dubreuia I'm seeing this now with Save Actions v1.4.0, IntelliJ IDEA 2018.3.4 (Community Edition)

Full IntelliJ version info: IntelliJ IDEA 2018.3.4 (Community Edition) Build #IC-183.5429.30, built on January 29, 2019 JRE: 1.8.0_152-release-1343-b26 amd64 JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o Windows 10 10.0

Error message seems identical to OP. Anything else I can contribute to help fix this?

tomasaschan avatar Feb 26 '19 18:02 tomasaschan

Can you tell me if you're using CTRL + S to trigger the plugin or just on implicit save? Also if you still have the stack that would be nice

dubreuia avatar Feb 26 '19 18:02 dubreuia

Yeah, I routinely CTRL+S (I'm normally a .NET developer, so not used to IntelliJ's auto-save feature. I'm used to saving files to trigger rebuilds :)).

Here's the full stack trace from a recent instance:

Refactorings should not be started inside write action
 because they start progress inside and any read action from the progress task would cause the deadlock

java.lang.Exception
	at com.intellij.refactoring.BaseRefactoringProcessor.run(BaseRefactoringProcessor.java:543)
	at com.siyeh.ig.performance.MethodMayBeStaticInspection$1.doFix(MethodMayBeStaticInspection.java:64)
	at com.siyeh.ig.InspectionGadgetsFix.applyFix(InspectionGadgetsFix.java:39)
	at com.siyeh.ig.InspectionGadgetsFix.applyFix(InspectionGadgetsFix.java:26)
	at com.dubreuia.processors.java.InspectionRunnable.writeQuickFixes(InspectionRunnable.java:71)
	at com.dubreuia.processors.java.InspectionRunnable.run(InspectionRunnable.java:46)
	at com.dubreuia.processors.SaveWriteCommand$1.run(SaveWriteCommand.java:32)
	at com.intellij.openapi.application.RunResult.run(RunResult.java:35)
	at com.intellij.openapi.command.WriteCommandAction.lambda$null$1(WriteCommandAction.java:264)
	at com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(ApplicationImpl.java:1057)
	at com.intellij.openapi.command.WriteCommandAction.lambda$performWriteCommandAction$2(WriteCommandAction.java:263)
	at com.intellij.openapi.command.WriteCommandAction.lambda$doExecuteCommand$4(WriteCommandAction.java:321)
	at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:220)
	at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:188)
	at com.intellij.openapi.command.WriteCommandAction.doExecuteCommand(WriteCommandAction.java:323)
	at com.intellij.openapi.command.WriteCommandAction.performWriteCommandAction(WriteCommandAction.java:262)
	at com.intellij.openapi.command.WriteCommandAction.execute(WriteCommandAction.java:244)
	at com.dubreuia.processors.SaveWriteCommand.execute(SaveWriteCommand.java:35)
	at com.dubreuia.core.component.Engine.lambda$processPsiFiles$5(Engine.java:80)
	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
	at java.util.stream.ReferencePipeline$11$1.accept(ReferencePipeline.java:373)
	at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1376)
	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
	at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
	at com.dubreuia.core.component.Engine.processPsiFiles(Engine.java:81)
	at com.dubreuia.core.component.Engine.processPsiFilesIfNecessary(Engine.java:64)
	at com.dubreuia.core.component.SaveActionManager.processPsiFilesIfNecessary(SaveActionManager.java:144)
	at com.dubreuia.core.component.SaveActionManager.lambda$beforeDocumentsSaving$3(SaveActionManager.java:133)
	at java.util.HashMap.forEach(HashMap.java:1288)
	at com.dubreuia.core.component.SaveActionManager.beforeDocumentsSaving(SaveActionManager.java:132)
	at com.dubreuia.core.component.SaveActionManager.beforeAllDocumentsSaving(SaveActionManager.java:111)
	at sun.reflect.GeneratedMethodAccessor189.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at com.intellij.util.messages.impl.MessageBusConnectionImpl.deliverMessage(MessageBusConnectionImpl.java:117)
	at com.intellij.util.messages.impl.MessageBusImpl.doPumpMessages(MessageBusImpl.java:397)
	at com.intellij.util.messages.impl.MessageBusImpl.pumpWaitingBuses(MessageBusImpl.java:358)
	at com.intellij.util.messages.impl.MessageBusImpl.pumpMessages(MessageBusImpl.java:347)
	at com.intellij.util.messages.impl.MessageBusImpl.sendMessage(MessageBusImpl.java:324)
	at com.intellij.util.messages.impl.MessageBusImpl.access$200(MessageBusImpl.java:29)
	at com.intellij.util.messages.impl.MessageBusImpl$2.invoke(MessageBusImpl.java:196)
	at com.sun.proxy.$Proxy22.beforeAllDocumentsSaving(Unknown Source)
	at sun.reflect.GeneratedMethodAccessor189.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at com.intellij.openapi.fileEditor.impl.FileDocumentManagerImpl.multiCast(FileDocumentManagerImpl.java:141)
	at com.intellij.openapi.fileEditor.impl.FileDocumentManagerImpl.lambda$new$0(FileDocumentManagerImpl.java:121)
	at com.sun.proxy.$Proxy22.beforeAllDocumentsSaving(Unknown Source)
	at com.intellij.openapi.fileEditor.impl.FileDocumentManagerImpl.saveAllDocuments(FileDocumentManagerImpl.java:292)
	at com.intellij.openapi.fileEditor.impl.FileDocumentManagerImpl.saveAllDocuments(FileDocumentManagerImpl.java:282)
	at com.intellij.openapi.components.impl.stores.StoreUtil.saveDocumentsAndProjectsAndApp(StoreUtil.java:105)
	at com.intellij.openapi.application.impl.ApplicationImpl.saveAll(ApplicationImpl.java:1448)
	at com.intellij.ide.SaveAndSyncHandlerImpl.saveProjectsAndDocuments(SaveAndSyncHandlerImpl.java:126)
	at com.intellij.ide.SaveAndSyncHandlerImpl$2.lambda$onFrameDeactivated$0(SaveAndSyncHandlerImpl.java:94)
	at com.intellij.openapi.application.TransactionGuardImpl.runSyncTransaction(TransactionGuardImpl.java:88)
	at com.intellij.openapi.application.TransactionGuardImpl.lambda$submitTransaction$1(TransactionGuardImpl.java:111)
	at com.intellij.openapi.application.TransactionGuardImpl.submitTransaction(TransactionGuardImpl.java:120)
	at com.intellij.openapi.application.TransactionGuard.submitTransaction(TransactionGuard.java:122)
	at com.intellij.ide.SaveAndSyncHandlerImpl$2.onFrameDeactivated(SaveAndSyncHandlerImpl.java:92)
	at com.intellij.ide.FrameStateManagerImpl.fireDeactivationEvent(FrameStateManagerImpl.java:71)
	at com.intellij.ide.FrameStateManagerImpl.access$300(FrameStateManagerImpl.java:31)
	at com.intellij.ide.FrameStateManagerImpl$2.applicationDeactivated(FrameStateManagerImpl.java:58)
	at sun.reflect.GeneratedMethodAccessor217.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at com.intellij.util.messages.impl.MessageBusConnectionImpl.deliverMessage(MessageBusConnectionImpl.java:117)
	at com.intellij.util.messages.impl.MessageBusImpl.doPumpMessages(MessageBusImpl.java:397)
	at com.intellij.util.messages.impl.MessageBusImpl.pumpWaitingBuses(MessageBusImpl.java:358)
	at com.intellij.util.messages.impl.MessageBusImpl.pumpMessages(MessageBusImpl.java:347)
	at com.intellij.util.messages.impl.MessageBusImpl.sendMessage(MessageBusImpl.java:324)
	at com.intellij.util.messages.impl.MessageBusImpl.access$200(MessageBusImpl.java:29)
	at com.intellij.util.messages.impl.MessageBusImpl$2.invoke(MessageBusImpl.java:196)
	at com.sun.proxy.$Proxy111.applicationDeactivated(Unknown Source)
	at com.intellij.ide.ApplicationActivationStateManager.updateState(ApplicationActivationStateManager.java:80)
	at com.intellij.ide.IdeEventQueue.processAppActivationEvents(IdeEventQueue.java:685)
	at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:557)
	at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:363)
	at java.awt.SentEvent.dispatch(SentEvent.java:70)
	at java.awt.DefaultKeyboardFocusManager$DefaultKeyboardFocusManagerSentEvent.dispatch(DefaultKeyboardFocusManager.java:217)
	at java.awt.DefaultKeyboardFocusManager.sendMessage(DefaultKeyboardFocusManager.java:244)
	at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:755)
	at com.intellij.ide.IdeKeyboardFocusManager.dispatchEvent(IdeKeyboardFocusManager.java:27)
	at java.awt.Component.dispatchEventImpl(Component.java:4774)
	at java.awt.Container.dispatchEventImpl(Container.java:2295)
	at java.awt.Window.dispatchEventImpl(Window.java:2746)
	at java.awt.Component.dispatchEvent(Component.java:4725)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:764)
	at java.awt.EventQueue.access$500(EventQueue.java:98)
	at java.awt.EventQueue$3.run(EventQueue.java:715)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90)
	at java.awt.EventQueue$4.run(EventQueue.java:737)
	at java.awt.EventQueue$4.run(EventQueue.java:735)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:734)
	at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:719)
	at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:668)
	at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:363)
	at java.awt.SequencedEvent.dispatch(SequencedEvent.java:128)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:762)
	at java.awt.EventQueue.access$500(EventQueue.java:98)
	at java.awt.EventQueue$3.run(EventQueue.java:715)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90)
	at java.awt.EventQueue$4.run(EventQueue.java:737)
	at java.awt.EventQueue$4.run(EventQueue.java:735)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:734)
	at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:719)
	at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:668)
	at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:363)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

tomasaschan avatar Feb 26 '19 18:02 tomasaschan

Ok thanks, I think I know what's going on, I'll need to find some time to fix it

dubreuia avatar Feb 26 '19 19:02 dubreuia

Duplicates #203

dubreuia avatar Mar 23 '19 22:03 dubreuia

@dubreuia I think "duplicates #203" is a misunderstanding; this is #203... :)

tomasaschan avatar Mar 25 '19 08:03 tomasaschan

Thanks @tomasaschan

Duplicates #210

dubreuia avatar Mar 25 '19 10:03 dubreuia

Just happened to me on latest version 1.5.0 2018.3, cannot update as it is newest

Refactorings should not be started inside write action because they start progress inside and any read action from the progress task would cause the deadlock

java.lang.Exception at com.intellij.refactoring.BaseRefactoringProcessor.run(BaseRefactoringProcessor.java:543) at com.siyeh.ig.performance.MethodMayBeStaticInspection$1.doFix(MethodMayBeStaticInspection.java:64) at com.siyeh.ig.InspectionGadgetsFix.applyFix(InspectionGadgetsFix.java:39) at com.siyeh.ig.InspectionGadgetsFix.applyFix(InspectionGadgetsFix.java:26) at com.dubreuia.processors.java.InspectionRunnable.writeQuickFixes(InspectionRunnable.java:71) at com.dubreuia.processors.java.InspectionRunnable.run(InspectionRunnable.java:46) at com.dubreuia.processors.SaveWriteCommand$1.run(SaveWriteCommand.java:32) at com.intellij.openapi.application.RunResult.run(RunResult.java:35) at com.intellij.openapi.command.WriteCommandAction.lambda$null$1(WriteCommandAction.java:264) at com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(ApplicationImpl.java:1057) at com.intellij.openapi.command.WriteCommandAction.lambda$performWriteCommandAction$2(WriteCommandAction.java:263) at com.intellij.openapi.command.WriteCommandAction.lambda$doExecuteCommand$4(WriteCommandAction.java:321) at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:220) at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:188) at com.intellij.openapi.command.WriteCommandAction.doExecuteCommand(WriteCommandAction.java:323) at com.intellij.openapi.command.WriteCommandAction.performWriteCommandAction(WriteCommandAction.java:262) at com.intellij.openapi.command.WriteCommandAction.execute(WriteCommandAction.java:244) at com.dubreuia.processors.SaveWriteCommand.execute(SaveWriteCommand.java:35) at com.dubreuia.core.component.Engine.lambda$processPsiFiles$5(Engine.java:80) at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) at java.util.stream.ReferencePipeline$11$1.accept(ReferencePipeline.java:373) at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1376) at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481) at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471) at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708) at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499) at com.dubreuia.core.component.Engine.processPsiFiles(Engine.java:81) at com.dubreuia.core.component.Engine.processPsiFilesIfNecessary(Engine.java:64) at com.dubreuia.core.component.SaveActionManager.guardedProcessPsiFiles(SaveActionManager.java:144) at com.dubreuia.core.component.SaveActionManager.lambda$beforeDocumentsSaving$3(SaveActionManager.java:128) at java.util.HashMap.forEach(HashMap.java:1288) at com.dubreuia.core.component.SaveActionManager.beforeDocumentsSaving(SaveActionManager.java:127) at com.dubreuia.core.component.SaveActionManager.beforeAllDocumentsSaving(SaveActionManager.java:112) at sun.reflect.GeneratedMethodAccessor211.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.intellij.util.messages.impl.MessageBusConnectionImpl.deliverMessage(MessageBusConnectionImpl.java:117) at com.intellij.util.messages.impl.MessageBusImpl.doPumpMessages(MessageBusImpl.java:397) at com.intellij.util.messages.impl.MessageBusImpl.pumpWaitingBuses(MessageBusImpl.java:358) at com.intellij.util.messages.impl.MessageBusImpl.pumpMessages(MessageBusImpl.java:347) at com.intellij.util.messages.impl.MessageBusImpl.sendMessage(MessageBusImpl.java:324) at com.intellij.util.messages.impl.MessageBusImpl.access$200(MessageBusImpl.java:29) at com.intellij.util.messages.impl.MessageBusImpl$2.invoke(MessageBusImpl.java:196) at com.sun.proxy.$Proxy22.beforeAllDocumentsSaving(Unknown Source) at sun.reflect.GeneratedMethodAccessor211.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.intellij.openapi.fileEditor.impl.FileDocumentManagerImpl.multiCast(FileDocumentManagerImpl.java:140) at com.intellij.openapi.fileEditor.impl.FileDocumentManagerImpl.lambda$new$0(FileDocumentManagerImpl.java:120) at com.sun.proxy.$Proxy22.beforeAllDocumentsSaving(Unknown Source) at com.intellij.openapi.fileEditor.impl.FileDocumentManagerImpl.saveAllDocuments(FileDocumentManagerImpl.java:291) at com.intellij.openapi.fileEditor.impl.FileDocumentManagerImpl.saveAllDocuments(FileDocumentManagerImpl.java:281) at com.intellij.openapi.components.impl.stores.StoreUtil.saveDocumentsAndProjectsAndApp(StoreUtil.java:105) at com.intellij.ide.actions.SaveAllAction.actionPerformed(SaveAllAction.java:23) at com.intellij.openapi.actionSystem.ex.ActionUtil$1.run(ActionUtil.java:258) at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAware(ActionUtil.java:275) at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher$1.performAction(IdeKeyEventDispatcher.java:620) at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.lambda$processAction$2(IdeKeyEventDispatcher.java:669) at com.intellij.openapi.application.TransactionGuardImpl.performUserActivity(TransactionGuardImpl.java:195) at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.processAction(IdeKeyEventDispatcher.java:668) at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.processActionOrWaitSecondStroke(IdeKeyEventDispatcher.java:520) at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.inInitState(IdeKeyEventDispatcher.java:475) at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.dispatchKeyEvent(IdeKeyEventDispatcher.java:212) at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:643) at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:363) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

Lothrazar avatar Jul 06 '19 06:07 Lothrazar

Reopening but I still have no idea how to fix that.

dubreuia avatar Jul 08 '19 13:07 dubreuia

Closing, reopen if it still happens on version 2.x

dubreuia avatar Sep 11 '20 22:09 dubreuia

Save Actions 2.2.0 Refactorings should not be started inside write action because they start progress inside and any read action from the progress task would cause the deadlock

java.lang.Exception at com.intellij.refactoring.BaseRefactoringProcessor.run(BaseRefactoringProcessor.java:646) at com.siyeh.ig.performance.MethodMayBeStaticInspection$1.doFix(MethodMayBeStaticInspection.java:66) at com.siyeh.ig.InspectionGadgetsFix.applyFix(InspectionGadgetsFix.java:39) at com.siyeh.ig.InspectionGadgetsFix.applyFix(InspectionGadgetsFix.java:26) at com.dubreuia.processors.java.InspectionRunnable.writeQuickFixes(InspectionRunnable.java:96) at com.dubreuia.processors.java.InspectionRunnable.run(InspectionRunnable.java:71) at com.dubreuia.processors.SaveWriteCommand$1.run(SaveWriteCommand.java:57) at com.intellij.openapi.application.RunResult.run(RunResult.java:36) at com.intellij.openapi.command.WriteCommandAction.lambda$performWriteCommandAction$1(WriteCommandAction.java:266) at com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(ApplicationImpl.java:959) at com.intellij.openapi.command.WriteCommandAction.lambda$performWriteCommandAction$2(WriteCommandAction.java:265) at com.intellij.openapi.command.WriteCommandAction.lambda$doExecuteCommand$3(WriteCommandAction.java:295) at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:216) at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:182) at com.intellij.openapi.command.WriteCommandAction.doExecuteCommand(WriteCommandAction.java:297) at com.intellij.openapi.command.WriteCommandAction.performWriteCommandAction(WriteCommandAction.java:265) at com.intellij.openapi.command.WriteCommandAction.execute(WriteCommandAction.java:246) at com.dubreuia.processors.SaveWriteCommand.execute(SaveWriteCommand.java:60) at com.dubreuia.core.component.Engine.lambda$processPsiFiles$5(Engine.java:106) at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195) at java.base/java.util.stream.ReferencePipeline$11$1.accept(ReferencePipeline.java:442) at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1655) at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484) at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474) at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:913) at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:578) at com.dubreuia.core.component.Engine.processPsiFiles(Engine.java:107) at com.dubreuia.core.component.Engine.processPsiFilesIfNecessary(Engine.java:90) at com.dubreuia.core.component.SaveActionManager.guardedProcessPsiFiles(SaveActionManager.java:169) at com.dubreuia.core.component.SaveActionManager.lambda$beforeDocumentsSaving$3(SaveActionManager.java:153) at java.base/java.util.HashMap.forEach(HashMap.java:1336) at com.dubreuia.core.component.SaveActionManager.beforeDocumentsSaving(SaveActionManager.java:152) at com.dubreuia.core.component.SaveActionManager.beforeAllDocumentsSaving(SaveActionManager.java:137) at com.intellij.util.messages.impl.MessageBusImpl.invokeMethod(MessageBusImpl.java:671) at com.intellij.util.messages.impl.MessageBusImpl.invokeListener(MessageBusImpl.java:649) at com.intellij.util.messages.impl.MessageBusImpl.deliverMessage(MessageBusImpl.java:422) at com.intellij.util.messages.impl.MessageBusImpl.pumpWaitingBuses(MessageBusImpl.java:397) at com.intellij.util.messages.impl.MessageBusImpl.pumpMessages(MessageBusImpl.java:379) at com.intellij.util.messages.impl.MessageBusImpl.access$100(MessageBusImpl.java:33) at com.intellij.util.messages.impl.MessageBusImpl$MessagePublisher.invoke(MessageBusImpl.java:185) at com.sun.proxy.$Proxy22.beforeAllDocumentsSaving(Unknown Source) at jdk.internal.reflect.GeneratedMethodAccessor189.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at com.intellij.openapi.fileEditor.impl.FileDocumentManagerImpl.multiCast(FileDocumentManagerImpl.java:174) at com.intellij.openapi.fileEditor.impl.FileDocumentManagerImpl.lambda$new$0(FileDocumentManagerImpl.java:129) at com.sun.proxy.$Proxy22.beforeAllDocumentsSaving(Unknown Source) at com.intellij.openapi.fileEditor.impl.FileDocumentManagerImpl.saveDocuments(FileDocumentManagerImpl.java:271) at com.intellij.openapi.fileEditor.impl.FileDocumentManagerImpl.saveAllDocuments(FileDocumentManagerImpl.java:259) at com.intellij.openapi.fileEditor.impl.FileDocumentManagerImpl.saveAllDocuments(FileDocumentManagerImpl.java:252) at com.intellij.ide.actions.SaveAllAction.actionPerformed(SaveAllAction.kt:24) at com.intellij.openapi.actionSystem.ex.ActionUtil.lambda$performActionDumbAware$5(ActionUtil.java:273) at com.intellij.util.SlowOperations.lambda$allowSlowOperations$0(SlowOperations.java:77) at com.intellij.util.SlowOperations.allowSlowOperations(SlowOperations.java:64) at com.intellij.util.SlowOperations.allowSlowOperations(SlowOperations.java:76) at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAware(ActionUtil.java:273) at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher$1.performAction(IdeKeyEventDispatcher.java:616) at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.lambda$processAction$3(IdeKeyEventDispatcher.java:676) at com.intellij.openapi.application.TransactionGuardImpl.performUserActivity(TransactionGuardImpl.java:95) at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.processAction(IdeKeyEventDispatcher.java:675) at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.processAction(IdeKeyEventDispatcher.java:626) at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.processActionOrWaitSecondStroke(IdeKeyEventDispatcher.java:486) at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.inInitState(IdeKeyEventDispatcher.java:481) at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.dispatchKeyEvent(IdeKeyEventDispatcher.java:232) at com.intellij.ide.IdeEventQueue.dispatchKeyEvent(IdeEventQueue.java:889) at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:833) at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$8(IdeEventQueue.java:449) at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:808) at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$9(IdeEventQueue.java:448) at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:781) at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:502) 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)

ejoful avatar Jun 29 '22 09:06 ejoful