I'm on Linux and I'm seeing the Kotlin IntelliJ pl...
# intellij
o
I'm on Linux and I'm seeing the Kotlin IntelliJ plugin crashing a lot. Can I expect this to improve with the new plugin which is currently available for macOS only?
a
According the the name of the plugin, it's normal kotlin and it's the same* for linux and mac. Could you please show the exception you have to check that it was correctly attributed?
o
I have just updated to 252.25557.131-IJ, so I could wait for another round of crashes to appear. I had cleared the recent set of problem reports, after sending lots of them in for a couple of weeks. If you could point out where to find them locally, I could supply them to you. Same if I knew how to look up the sent ones.
a
you can check idea.log (
Help | Show log in
). It's kinda complicated to find your submitted reports as we try to anonymize as much as possible :/
o
Found it. "Plugin to blame" seems to be a good search term. Here's an excerpt with some lines cut out due to Slack complaining "message too long". Does this help?
Copy code
2025-08-29 01:06:59,729 [128275512]   WARN - #c.i.c.d.i.PassExecutorService - Suppressed a frequent exception logged for the 10th time: getOriginalFile(...) must not be null
2025-08-29 01:07:00,027 [128275810] SEVERE - #c.i.c.d.i.PassExecutorService - getOriginalFile(...) must not be null
java.lang.NullPointerException: getOriginalFile(...) must not be null
	at org.jetbrains.kotlin.idea.util.FileUtils.getOriginalOrDelegateFile(FileUtils.kt:34)
	at org.jetbrains.kotlin.idea.fir.extensions.KtCompilerPluginsProviderIdeImpl.getRegisteredExtensions(KtCompilerPluginsProviderIdeImpl.kt:155)
	at org.jetbrains.kotlin.analysis.low.level.api.fir.projectStructure.SessionFactoryHelpersKt.registerCompilerPluginExtensions(sessionFactoryHelpers.kt:97)
	at org.jetbrains.kotlin.analysis.low.level.api.fir.sessions.LLFirAbstractSessionFactory.createScriptSession(LLFirAbstractSessionFactory.kt:161)
	at org.jetbrains.kotlin.analysis.low.level.api.fir.sessions.LLFirSessionCache.createSession(LLFirSessionCache.kt:128)
	at org.jetbrains.kotlin.analysis.low.level.api.fir.sessions.LLFirSessionCache.access$createSession(LLFirSessionCache.kt:28)
	at org.jetbrains.kotlin.analysis.low.level.api.fir.sessions.LLFirSessionCache$getSession$1.invoke(LLFirSessionCache.kt:60)
	at org.jetbrains.kotlin.analysis.low.level.api.fir.sessions.LLFirSessionCache$getSession$1.invoke(LLFirSessionCache.kt:60)
	at org.jetbrains.kotlin.analysis.low.level.api.fir.sessions.LLFirSessionCache.getCachedSession$lambda$3(LLFirSessionCache.kt:93)
	at org.jetbrains.kotlin.analysis.low.level.api.fir.caches.cleanable.CleanableValueReferenceCache.computeIfAbsent$lambda$1(CleanableValueReferenceCache.kt:89)
	at org.jetbrains.kotlin.analysis.low.level.api.fir.caches.cleanable.CleanableValueReferenceCache.compute$lambda$2(CleanableValueReferenceCache.kt:118)
	at org.jetbrains.kotlin.analysis.low.level.api.fir.caches.cleanable.CleanableValueReferenceCache.compute$lambda$3(CleanableValueReferenceCache.kt:114)
	at java.base/java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1916)
	at org.jetbrains.kotlin.analysis.low.level.api.fir.caches.cleanable.CleanableValueReferenceCache.compute(CleanableValueReferenceCache.kt:114)
	at org.jetbrains.kotlin.analysis.low.level.api.fir.caches.cleanable.CleanableValueReferenceCache.computeIfAbsent(CleanableValueReferenceCache.kt:89)
	at org.jetbrains.kotlin.analysis.low.level.api.fir.sessions.LLFirSessionCache.getCachedSession(LLFirSessionCache.kt:93)
	at org.jetbrains.kotlin.analysis.low.level.api.fir.sessions.LLFirSessionCache.getSession(LLFirSessionCache.kt:60)
	at org.jetbrains.kotlin.analysis.low.level.api.fir.sessions.LLFirSessionCache.getSession$default(LLFirSessionCache.kt:49)
	at org.jetbrains.kotlin.analysis.low.level.api.fir.LLResolutionFacadeService$getResolutionFacade$1.invoke(LLResolutionFacadeService.kt:24)
	at org.jetbrains.kotlin.analysis.low.level.api.fir.LLResolutionFacadeService$getResolutionFacade$1.invoke(LLResolutionFacadeService.kt:24)
	at org.jetbrains.kotlin.analysis.low.level.api.fir.state.LLSessionProvider.useSiteSession_delegate$lambda$0(LLSessionProvider.kt:22)
	at kotlin.SafePublicationLazyImpl.getValue(LazyJVM.kt:125)
	at org.jetbrains.kotlin.analysis.low.level.api.fir.state.LLSessionProvider.getUseSiteSession(LLSessionProvider.kt:22)
	at org.jetbrains.kotlin.analysis.low.level.api.fir.api.LLResolutionFacade.getUseSiteFirSession(LLResolutionFacade.kt:63)
	at org.jetbrains.kotlin.analysis.api.fir.KaFirSessionProvider.createAnalysisSession(KaFirSessionProvider.kt:120)
	at org.jetbrains.kotlin.analysis.api.fir.KaFirSessionProvider.access$createAnalysisSession(KaFirSessionProvider.kt:48)
	at org.jetbrains.kotlin.analysis.api.fir.KaFirSessionProvider$getAnalysisSession$1.invoke(KaFirSessionProvider.kt:111)
	at org.jetbrains.kotlin.analysis.api.fir.KaFirSessionProvider$getAnalysisSession$1.invoke(KaFirSessionProvider.kt:111)
	at org.jetbrains.kotlin.analysis.api.fir.KaFirSessionProvider.getAnalysisSession$lambda$3(KaFirSessionProvider.kt:111)
	at com.github.benmanes.caffeine.cache.BoundedLocalCache.lambda$doComputeIfAbsent$14(BoundedLocalCache.java:2704)
	at java.base/java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1955)
	at com.github.benmanes.caffeine.cache.BoundedLocalCache.doComputeIfAbsent(BoundedLocalCache.java:2702)
	at com.github.benmanes.caffeine.cache.BoundedLocalCache.computeIfAbsent(BoundedLocalCache.java:2684)
	at com.github.benmanes.caffeine.cache.LocalCache.computeIfAbsent(LocalCache.java:112)
	at com.github.benmanes.caffeine.cache.LocalManualCache.get(LocalManualCache.java:63)
	at org.jetbrains.kotlin.analysis.api.fir.KaFirSessionProvider.getAnalysisSession(KaFirSessionProvider.kt:111)
	at org.jetbrains.kotlin.analysis.api.fir.KaFirSessionProvider.getAnalysisSession(KaFirSessionProvider.kt:91)
	at org.jetbrains.kotlin.idea.highlighting.visitor.KotlinDiagnosticHighlightVisitor.analyzeFile(KotlinDiagnosticHighlightVisitor.kt:372)
	at org.jetbrains.kotlin.idea.highlighting.visitor.KotlinDiagnosticHighlightVisitor.analyze(KotlinDiagnosticHighlightVisitor.kt:89)
	at com.intellij.codeInsight.daemon.impl.HighlightVisitorRunner.lambda$runVisitors$5(HighlightVisitorRunner.java:122)
	at com.intellij.concurrency.ApplierCompleter.processArrayItem(ApplierCompleter.java:121)
	at com.intellij.concurrency.ApplierCompleter.processArray(ApplierCompleter.java:219)
	at com.intellij.concurrency.ApplierCompleter.helpOthers(ApplierCompleter.java:239)
	at com.intellij.concurrency.ApplierCompleter.helpAll(ApplierCompleter.java:181)
	at com.intellij.concurrency.ApplierCompleter.lambda$exec$0(ApplierCompleter.java:111)
	at com.intellij.platform.locking.impl.NestedLocksThreadingSupport.tryRunReadAction(NestedLocksThreadingSupport.kt:826)
	at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1221)
	at com.intellij.concurrency.ApplierCompleter.lambda$wrapInReadActionAndIndicator$2(ApplierCompleter.java:153)
	at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$14(CoreProgressManager.java:681)
	at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:756)
	at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:712)
	at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:680)
	at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:78)
	at com.intellij.concurrency.ApplierCompleter.wrapInReadActionAndIndicator(ApplierCompleter.java:164)
	at com.intellij.concurrency.ApplierCompleter.lambda$wrapAndRun$1(ApplierCompleter.java:145)
	at com.intellij.openapi.application.impl.ApplicationImpl.executeByImpatientReader(ApplicationImpl.java:258)
	at com.intellij.concurrency.ApplierCompleter.wrapAndRun(ApplierCompleter.java:145)
	at com.intellij.concurrency.ApplierCompleter.exec(ApplierCompleter.java:113)
	at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:507)
	at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1491)
	at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:2073)
	at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:2035)
	at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:187)
2025-08-29 01:07:00,028 [128275811] SEVERE - #c.i.c.d.i.PassExecutorService - IntelliJ IDEA 2025.2.1 RC  Build #IU-252.25557.77
2025-08-29 01:07:00,028 [128275811] SEVERE - #c.i.c.d.i.PassExecutorService - JDK: 21.0.8; VM: OpenJDK 64-Bit Server VM; Vendor: JetBrains s.r.o.
2025-08-29 01:07:00,028 [128275811] SEVERE - #c.i.c.d.i.PassExecutorService - OS: Linux
2025-08-29 01:07:00,031 [128275814] SEVERE - #c.i.c.d.i.PassExecutorService - Plugin to blame: Kotlin version: <tel:252.25557.77|252.25557.77>-IJ
2025-08-29 01:07:00,036 [128275819]   WARN - #c.i.c.d.i.PassExecutorService - Suppressed a frequent exception logged for the 2nd time: getOriginalFile(...) must not be null
2025-08-29 01:07:08,885 [128284668] SEVERE - #c.i.c.d.i.PassExecutorService - getOriginalFile(...) must not be null
java.lang.NullPointerException: getOriginalFile(...) must not be null
	at org.jetbrains.kotlin.idea.util.FileUtils.getOriginalOrDelegateFile(FileUtils.kt:34)
	at org.jetbrains.kotlin.idea.fir.extensions.KtCompilerPluginsProviderIdeImpl.getRegisteredExtensions(KtCompilerPluginsProviderIdeImpl.kt:155)
	at org.jetbrains.kotlin.analysis.low.level.api.fir.projectStructure.SessionFactoryHelpersKt.registerCompilerPluginExtensions(sessionFactoryHelpers.kt:97)
	at org.jetbrains.kotlin.analysis.low.level.api.fir.sessions.LLFirAbstractSessionFactory.createScriptSession(LLFirAbstractSessionFactory.kt:161)
	at org.jetbrains.kotlin.analysis.low.level.api.fir.sessions.LLFirSessionCache.createSession(LLFirSessionCache.kt:128)
	at org.jetbrains.kotlin.analysis.low.level.api.fir.sessions.LLFirSessionCache.access$createSession(LLFirSessionCache.kt:28)
	at org.jetbrains.kotlin.analysis.low.level.api.fir.sessions.LLFirSessionCache$getSession$1.invoke(LLFirSessionCache.kt:60)
	at org.jetbrains.kotlin.analysis.low.level.api.fir.sessions.LLFirSessionCache$getSession$1.invoke(LLFirSessionCache.kt:60)
	at org.jetbrains.kotlin.analysis.low.level.api.fir.sessions.LLFirSessionCache.getCachedSession$lambda$3(LLFirSessionCache.kt:93)

[...]

2025-08-29 01:07:08,885 [128284668] SEVERE - #c.i.c.d.i.PassExecutorService - IntelliJ IDEA 2025.2.1 RC  Build #IU-252.25557.77
2025-08-29 01:07:08,885 [128284668] SEVERE - #c.i.c.d.i.PassExecutorService - JDK: 21.0.8; VM: OpenJDK 64-Bit Server VM; Vendor: JetBrains s.r.o.
2025-08-29 01:07:08,885 [128284668] SEVERE - #c.i.c.d.i.PassExecutorService - OS: Linux
2025-08-29 01:07:08,888 [128284671] SEVERE - #c.i.c.d.i.PassExecutorService - Plugin to blame: Kotlin version: <tel:252.25557.77|252.25557.77>-IJ
2025-08-29 01:07:08,892 [128284675]   WARN - #c.i.c.d.i.PassExecutorService - Suppressed a frequent exception logged for the 2nd time: getOriginalFile(...) must not be null
2025-08-29 01:07:24,128 [128299911]   WARN - #c.i.c.d.i.PassExecutorService - Suppressed a frequent exception logged for the 5th time: getOriginalFile(...) must not be null
2025-08-29 01:07:24,271 [128300054]   WARN - #c.i.c.d.i.PassExecutorService - Suppressed a frequent exception logged for the 10th time: getOriginalFile(...) must not be null
a
it's kotlin, I won't expect diff to MacOs
o
Can I do something to reduce the number of crashes? I find it a bit difficult to scan dozens of crash reports when deciding whether to send them in.
a
You can submit a private YT issue with attached logs, if private issue is a solution for you.
o
The problem is the sheer amount of crashes. With occasional issues I have no problems deciding what to send or whether to create a YT issue, But at least I know now that the plugin causing the issues is still current, so that it makes sense to report them.
a
Yes, please report! It looks like some compiler plugin is causing issues and it's important to know which plugins do you use to nail the problem down. Thanks!
👍 1
o
It seems that the high frequency of crashes has https://youtrack.jetbrains.com/issue/KTIJ-34782 as a root cause. Unfortunately that issue is tagged as duplicate without referencing the original issue for tracking.
a
The referenced issue is for some reason private. It's fixed and the fix should be available in the first EAP of 25.3 (>253.2090). I'll ask if it makes sense to backport to 25.2
thank you color 1
o
Thank you so much. That's all I needed to know.