magento / magento/magento2-phpstorm-plugin

[Bug] PluginException: 212 ms to call on EDT CreateAPluginAction#update@EditorPopup (CreateAPluginAction)

Open
#1,238 1 comment 0 reactions 0 assignees View on GitHub
bug
Dominant language
Java
Stars
463
Forks
98
Avg merge
1h 6m
Merged PRs (30d)
3

Description

**Describe the bug** (*)

A clear and concise description of what the bug is.

```
com.intellij.diagnostic.PluginException: 212 ms to call on EDT CreateAPluginAction#update@EditorPopup (com.magento.idea.magento2plugin.actions.generation.CreateAPluginAction). Revise AnAction.getActionUpdateThread property [Plugin: com.magento.idea.magento2plugin]
at com.intellij.diagnostic.PluginProblemReporterImpl.createPluginExceptionByClass(PluginProblemReporterImpl.java:23)
at com.intellij.diagnostic.PluginException.createByClass(PluginException.java:83)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.computeOnEdt(ActionUpdater.java:256)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.callAction(ActionUpdater.java:204)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.callAction(ActionUpdater.java:162)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.updateActionReal(ActionUpdater.java:138)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$new$0(ActionUpdater.java:125)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.update(ActionUpdater.java:707)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.expandGroupChild(ActionUpdater.java:558)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$doExpandActionGroup$23(ActionUpdater.java:531)
at com.intellij.util.containers.ContainerUtil.concat(ContainerUtil.java:1406)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.doExpandActionGroup(ActionUpdater.java:531)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.expandActionGroup(ActionUpdater.java:310)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$doExpandActionGroupAsync$14(ActionUpdater.java:378)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$doExpandActionGroupAsync$15(ActionUpdater.java:397)
at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1086)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$tryRunReadActionAndCancelBeforeWrite$19(ActionUpdater.java:429)
at com.intellij.openapi.progress.util.ProgressIndicatorUtilService.runActionAndCancelBeforeWrite(ProgressIndicatorUtilService.java:63)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runActionAndCancelBeforeWrite(ProgressIndicatorUtils.java:128)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.tryRunReadActionAndCancelBeforeWrite(ActionUpdater.java:425)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$doExpandActionGroupAsync$16(ActionUpdater.java:397)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:190)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$13(CoreProgressManager.java:591)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:666)
at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:622)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:590)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:60)
at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:177)
at com.intellij.openapi.progress.util.BackgroundTaskUtil.runUnderDisposeAwareIndicator(BackgroundTaskUtil.java:365)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$doExpandActionGroupAsync$17(ActionUpdater.java:396)
at io.opentelemetry.context.Context.lambda$wrap$1(Context.java:212)
at com.intellij.util.concurrency.BoundedTaskExecutor.doRun(BoundedTaskExecutor.java:243)
at com.intellij.util.concurrency.BoundedTaskExecutor.access$200(BoundedTaskExecutor.java:29)
at com.intellij.util.concurrency.BoundedTaskExecutor$1.executeFirstTaskAndHelpQueue(BoundedTaskExecutor.java:216)
at com.intellij.util.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:212)
at com.intellij.util.concurrency.BoundedTaskExecutor$1.run(BoundedTaskExecutor.java:205)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:702)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:699)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:699)
at java.base/java.lang.Thread.run(Thread.java:833)
Suppressed: java.lang.Throwable: EDT-trace-at-105-ms
at java.base@17.0.4.1/jdk.internal.misc.Unsafe.park(Native Method)
at java.base@17.0.4.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:211)
at java.base@17.0.4.1/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:715)
at java.base@17.0.4.1/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:938)
at java.base@17.0.4.1/java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock.lock(ReentrantReadWriteLock.java:959)
at com.intellij.util.io.PersistentMapImpl.get(PersistentMapImpl.java:547)
at com.intellij.util.indexing.impl.ValueContainerMap.lambda$getModifiableValueContainer$0(ValueContainerMap.java:81)
at com.intellij.util.indexing.impl.ValueContainerMap$$Lambda$1133/0x0000000100b4cb40.compute(Unknown Source)
at com.intellij.util.indexing.impl.ChangeTrackingValueContainer.getMergedData(ChangeTrackingValueContainer.java:105)
at com.intellij.util.indexing.impl.ChangeTrackingValueContainer.getValueIterator(ChangeTrackingValueContainer.java:85)
at com.intellij.util.indexing.ValueContainer.forEach(ValueContainer.java:45)
at com.intellij.util.indexing.storage.MapReduceIndexBase.getNullableIndexedData(MapReduceIndexBase.java:80)
at com.intellij.util.indexing.impl.storage.TransientFileContentIndex.getNullableIndexedData(TransientFileContentIndex.java:99)
at com.intellij.util.indexing.storage.MapReduceIndexBase.lambda$getIndexedFileData$1(MapReduceIndexBase.java:61)
at c
```

**To Reproduce** (*)

Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

**Expected behavior** (*)

A clear and concise description of what you expected to happen.

**Screenshots**

If applicable, add screenshots to help explain your problem.

**Please complete the following information:** (*)

- OS: Windows 11 10.0
- PhpStorm/Intellij version: 2022.3 EAP
- Plugin Version: 4.4.0

**Additional context**

Add any other context about the problem here.

Contributor guide

Open the contributing guide

Research direction

Start with the CreateAPluginAction#update entry point named in the exception and read the stack trace around the EDT call. Reproduce the issue in the listed PhpStorm 2022.3 EAP and verify that invoking the action no longer reports the PluginException about its action update thread.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.