alibaba / alibaba/p3c

JetBrains IntelliJ Plugin Error

Open
#747 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Kotlin
Stars
30.8k
Forks
8k
PR merge metrics
No merged PRs in 30d

Description

**Describe the bug**
时不时右下角警告插件出错,不过不影响使用

**To Reproduce**
Steps to reproduce the behavior:
1. 找一个不符合命名规范的变量
2. 使用'Alt+Enter'快捷键,选择修改
3. 开始报错

**Stack Trace**
java.lang.Throwable: Do not call commitAllDocumentsUnderProgress inside write-action
at com.intellij.openapi.diagnostic.Logger.error(Logger.java:143)
at com.intellij.psi.impl.PsiDocumentManagerBase.commitAllDocumentsUnderProgress(PsiDocumentManagerBase.java:226)
at com.intellij.refactoring.actions.BaseRefactoringAction.actionPerformed(BaseRefactoringAction.java:95)
at com.alibaba.p3c.idea.quickfix.AliQuickFix$Companion.doQuickFix(AliQuickFix.kt:75)
at com.alibaba.p3c.idea.quickfix.LowerCamelCaseVariableNamingQuickFix.applyFix(LowerCamelCaseVariableNamingQuickFix.kt:44)
at com.alibaba.p3c.idea.quickfix.LowerCamelCaseVariableNamingQuickFix.applyFix(LowerCamelCaseVariableNamingQuickFix.kt:30)
at com.intellij.codeInspection.ex.QuickFixWrapper.invoke(QuickFixWrapper.java:78)
at com.intellij.codeInsight.intention.impl.IntentionActionWithTextCaching$MyIntentionAction.invoke(IntentionActionWithTextCaching.java:184)
at com.intellij.codeInsight.intention.impl.ShowIntentionActionsHandler.lambda$invokeIntention$4(ShowIntentionActionsHandler.java:251)
at com.intellij.openapi.application.WriteAction.run(WriteAction.java:102)
at com.intellij.codeInsight.intention.impl.ShowIntentionActionsHandler.invokeIntention(ShowIntentionActionsHandler.java:251)
at com.intellij.codeInsight.intention.impl.ShowIntentionActionsHandler.lambda$chooseActionAndInvoke$3(ShowIntentionActionsHandler.java:227)
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:220)
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:177)
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:167)
at com.intellij.openapi.command.impl.CoreCommandProcessor.executeCommand(CoreCommandProcessor.java:153)
at com.intellij.codeInsight.intention.impl.ShowIntentionActionsHandler.chooseActionAndInvoke(ShowIntentionActionsHandler.java:226)
at com.intellij.codeInsight.intention.impl.IntentionListStep.lambda$applyAction$3(IntentionListStep.java:117)
at com.intellij.openapi.application.TransactionGuardImpl.performUserActivity(TransactionGuardImpl.java:94)
at com.intellij.ui.popup.AbstractPopup.lambda$dispose$16(AbstractPopup.java:1445)
at com.intellij.util.ui.UIUtil.invokeLaterIfNeeded(UIUtil.java:2254)
at com.intellij.ide.IdeEventQueue.ifFocusEventsInTheQueue(IdeEventQueue.java:188)
at com.intellij.ide.IdeEventQueue.executeWhenAllFocusEventsLeftTheQueue(IdeEventQueue.java:140)
at com.intellij.openapi.wm.impl.FocusManagerImpl.doWhenFocusSettlesDown(FocusManagerImpl.java:171)
at com.intellij.openapi.wm.impl.IdeFocusManagerImpl.doWhenFocusSettlesDown(IdeFocusManagerImpl.java:36)
at com.intellij.ui.popup.AbstractPopup.dispose(AbstractPopup.java:1441)
at com.intellij.ui.popup.WizardPopup.dispose(WizardPopup.java:158)
at com.intellij.ui.popup.list.ListPopupImpl.dispose(ListPopupImpl.java:326)
at com.intellij.openapi.util.ObjectNode.lambda$execute$0(ObjectNode.java:111)
at com.intellij.openapi.util.ObjectTree.executeActionWithRecursiveGuard(ObjectTree.java:193)
at com.intellij.openapi.util.ObjectNode.execute(ObjectNode.java:71)
at com.intellij.openapi.util.ObjectTree.executeAll(ObjectTree.java:141)
at com.intellij.openapi.util.Disposer.dispose(Disposer.java:130)
at com.intellij.openapi.util.Disposer.dispose(Disposer.java:120)
at com.intellij.ui.popup.WizardPopup.disposeAllParents(WizardPopup.java:261)
at com.intellij.ui.popup.list.ListPopupImpl.handleNextStep(ListPopupImpl.java:461)
at com.intellij.ui.popup.list.ListPopupImpl._handleSelect(ListPopupImpl.java:415)
at com.intellij.ui.popup.list.ListPopupImpl.handleSelect(ListPopupImpl.java:356)
at com.intellij.ui.popup.list.ListPopupImpl$1.actionPerformed(ListPopupImpl.java:269)
at com.intellij.ui.popup.WizardPopup.proceedKeyEvent(WizardPopup.java:376)
at com.intellij.ui.popup.WizardPopup.dispatch(WizardPopup.java:356)
at com.intellij.ui.popup.PopupDispatcher.dispatchKeyEvent(PopupDispatcher.java:112)
at com.intellij.ui.popup.PopupDispatcher.dispatch(PopupDispatcher.java:148)
at com.intellij.ide.IdePopupManager.dispatch(IdePopupManager.java:93)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:808)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$8(IdeEventQueue.java:452)
at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:744)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$9(IdeEventQueue.java:451)
at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:802)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:505)
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)

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with AliQuickFix.kt and LowerCamelCaseVariableNamingQuickFix.kt, using the reported IntelliJ commitAllDocumentsUnderProgress stack trace as the entry point. Reproduce the Alt+Enter rename action on a variable that violates naming conventions. Done means the quick fix applies without the plugin error warning.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, kotlin
Domain
developer-experience, tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.