Skip to content

com.intellij.openapi.diagnostic.RuntimeExceptionWithAttachments: Read access is allowed from inside read-action only (see Application.runReadAction()); If you access or modify model on EDT consider wrapping your code in WriteIntentReadAction or ReadAction #58

@garden96

Description

@garden96

Bug description

Please include steps to reproduce (like go to.../click on... etc.) + expected and actual behaviour.

For non-trivial issues, we would also appreciate if you included the following details (if not filled in automatically):

Running environment

  • Graph Buddy plugin version - 1.0.1
  • IDE - IntelliJ IDEA 2025.1.1.1
  • Operating system - Mac OS X 15.5

IDEA - Stack trace

com.intellij.openapi.diagnostic.RuntimeExceptionWithAttachments: Read access is allowed from inside read-action only (see Application.runReadAction()); If you access or modify model on EDT consider wrapping your code in WriteIntentReadAction or ReadAction; see https://jb.gg/ij-platform-threading for details
Current thread: Thread[#167,DefaultDispatcher-worker-1,5,main] 674311915 (EventQueue.isDispatchThread()=false)
SystemEventQueueThread: Thread[#99,AWT-EventQueue-0,6,main] 1037054787
at com.intellij.util.concurrency.ThreadingAssertions.createThreadAccessException(ThreadingAssertions.java:257)
at com.intellij.util.concurrency.ThreadingAssertions.throwThreadAccessException(ThreadingAssertions.java:248)
at com.intellij.util.concurrency.ThreadingAssertions.assertReadAccess(ThreadingAssertions.java:138)
at com.intellij.workspaceModel.core.fileIndex.impl.WorkspaceFileIndexDataImpl.ensureIsUpToDate(WorkspaceFileIndexDataImpl.kt:164)
at com.intellij.workspaceModel.core.fileIndex.impl.WorkspaceFileIndexDataImpl.getFileInfo(WorkspaceFileIndexDataImpl.kt:105)
at com.intellij.workspaceModel.core.fileIndex.impl.WorkspaceFileIndexImpl.getFileInfo(WorkspaceFileIndexImpl.kt:307)
at com.intellij.workspaceModel.core.fileIndex.impl.WorkspaceFileIndexImpl.findFileSetWithCustomData(WorkspaceFileIndexImpl.kt:271)
at com.intellij.openapi.roots.impl.ProjectFileIndexImpl.getContentRootForFile(ProjectFileIndexImpl.java:166)
at com.intellij.openapi.roots.impl.ProjectFileIndexImpl.getContentRootForFile(ProjectFileIndexImpl.java:160)
at com.virtuslab.semanticgraphs.intellijplugin.GraphBuddyStartupActivity.excludeSemanticGraphsDirectory$$anonfun$1(GraphBuddyStartupActivity.scala:21)
at scala.runtime.function.JProcedure1.apply(JProcedure1.java:15)
at scala.runtime.function.JProcedure1.apply(JProcedure1.java:10)
at scala.Option.foreach(Option.scala:437)
at com.virtuslab.semanticgraphs.intellijplugin.GraphBuddyStartupActivity.excludeSemanticGraphsDirectory(GraphBuddyStartupActivity.scala:28)
at com.virtuslab.semanticgraphs.intellijplugin.GraphBuddyStartupActivity.runActivity$$anonfun$2(GraphBuddyStartupActivity.scala:34)
at scala.runtime.function.JProcedure1.apply(JProcedure1.java:15)
at scala.runtime.function.JProcedure1.apply(JProcedure1.java:10)
at scala.Option.foreach(Option.scala:437)
at com.virtuslab.semanticgraphs.intellijplugin.GraphBuddyStartupActivity.runActivity(GraphBuddyStartupActivity.scala:47)
at com.intellij.ide.startup.impl.StartupManagerImplKt$launchBackgroundPostStartupActivity$1.invokeSuspend$lambda$0(StartupManagerImpl.kt:467)
at com.intellij.openapi.progress.CoroutinesKt.blockingContextInner(coroutines.kt:345)
at com.intellij.openapi.progress.CoroutinesKt$blockingContext$2.invokeSuspend(coroutines.kt:237)
at com.intellij.openapi.progress.CoroutinesKt$blockingContext$2.invoke(coroutines.kt)
at com.intellij.openapi.progress.CoroutinesKt$blockingContext$2.invoke(coroutines.kt)
at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:62)
at kotlinx.coroutines.CoroutineScopeKt.coroutineScope(CoroutineScope.kt:261)
at com.intellij.openapi.progress.CoroutinesKt.blockingContext(coroutines.kt:236)
at com.intellij.ide.startup.impl.StartupManagerImplKt$launchBackgroundPostStartupActivity$1.invokeSuspend(StartupManagerImpl.kt:465)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:608)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:873)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:763)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:750)

IDEA - additional info

N/A

Screenshots

If applicable, add screenshots (or screen recordings, see Peek on Linux)
to help explain your problem.

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