continue icon indicating copy to clipboard operation
continue copied to clipboard

[JetBrains] Sidebar panel frequently freezes across all OS'

Open bdavj opened this issue 3 months ago • 45 comments

Before submitting your bug report

Relevant environment info

- OS:
- Continue version:1.0.46, has affected many previous versions
- IDE version:  IntelliJ IDEA 2025.2.1 (Ultimate Edition), has affected many previous versions
- Model: Claude, but any.

Description

IntelliJ crashes about 3-4 times a day on a set of Mac / PC endpoints.

Window in IJ freezes, like so:

Image

No keyboard / mouse input to Continue until IJ is restarted fully (not just individual window)

To reproduce

No response

Log output

No log output

bdavj avatar Oct 03 '25 08:10 bdavj

@sestinj / @RomneyDa - This seems to have been affecting quite a lot of people for some time. Any ideas what might be causing this? Persists across windows / mac / WSL-g

bdavj avatar Oct 03 '25 08:10 bdavj

My Team is also massively affected by this on Windows

IntelliJ IDEA 2025.2.3 (Ultimate Edition) -- but also on various other versions

Continue 1.0.46 -- but also on previous versions

Windows 11 (Build 22631.5909)

Hakenadu avatar Oct 08 '25 08:10 Hakenadu

Restarting ide about 20 times in a day: PhpStorm 2025.2.3 macOs 15.7 ome times hangs in minutes and some times working hours without issues

pedroll avatar Oct 10 '25 21:10 pedroll

@bdavj @Hakenadu @pedroll thank for reporting this. It does seem to be affecting many users. Could you provider more details as to when and how it happens? Does it gradually get slower? Does it suddenly lock up a few times a day? Does it only happen when using e.g. autocomplete or chat?

RomneyDa avatar Oct 13 '25 17:10 RomneyDa

Any details helping us debug this would be greatly appreciated!

RomneyDa avatar Oct 13 '25 17:10 RomneyDa

Hi @RomneyDa - it's often when I'm not using it - I'll come back to It and UI elements will be the wrong size, or missing, and it's not responding to any input. I'd say at lease 3x a day, regardless of how much or little it's used.

bdavj avatar Oct 13 '25 17:10 bdavj

@RomneyDa Thank you for looking into this issue. At the moment, it causes many of our users to switch from IntelliJ to VSCode just to use the agent mode, before returning to IntelliJ to continue their work.

at this very moment my IDE looks like this (versions as mentioned in my previous message)

Image

However, I have also experienced the IDE freezing in other UI states. It feels as if a UI thread is simply hanging.

There is nothing relevant in core.log and nothing in prompt.log at the time the issues occur.

There are some IntelliJ logs however that occurred before that could be related to this behaviour:

this one

java.lang.NullPointerException: Cannot read field "isNull" because "robj" is null at jcef/com.jetbrains.cef.remote.router.RemoteMessageRouterImpl.create(RemoteMessageRouterImpl.java:38) at jcef/com.jetbrains.cef.remote.router.RemoteMessageRouter.lambda$new$4(RemoteMessageRouter.java:65) at jcef/com.jetbrains.cef.remote.CefServer.onConnected(CefServer.java:122) at jcef/com.jetbrains.cef.remote.router.RemoteMessageRouter.<init>(RemoteMessageRouter.java:63) at jcef/org.cef.browser.CefMessageRouter.create(CefMessageRouter.java:219) at jcef/org.cef.browser.CefMessageRouter.create(CefMessageRouter.java:203) at com.intellij.ui.jcef.JBCefApp.createMessageRouter(JBCefApp.java:503) at com.intellij.ui.jcef.JBCefJSQuery$JSQueryFunc.<init>(JBCefJSQuery.java:246) at com.intellij.ui.jcef.JBCefJSQuery$JSQueryFunc.<init>(JBCefJSQuery.java:236) at com.intellij.ui.jcef.JBCefJSQuery.lambda$create$0(JBCefJSQuery.java:56) at com.intellij.ui.jcef.JBCefJSQuery.create(JBCefJSQuery.java:70) at com.intellij.ui.jcef.JBCefBrowserJsCall.createQueryWithinScope(JBCefBrowserJsCall.kt:167) at com.intellij.ui.jcef.JBCefBrowserJsCall.createResultHandlerQueryWithinScope(JBCefBrowserJsCall.kt:152) at com.intellij.ui.jcef.JBCefBrowserJsCall.invoke(JBCefBrowserJsCall.kt:135) at com.intellij.ui.jcef.JBCefBrowserJsCallKt.executeJavaScriptAsync(JBCefBrowserJsCall.kt:58) at com.github.continuedev.continueintellijextension.browser.ContinueBrowser.sendToWebview(ContinueBrowser.kt:88) at com.github.continuedev.continueintellijextension.continue.CoreMessenger.handleMessage(CoreMessenger.kt:60) at com.github.continuedev.continueintellijextension.continue.CoreMessenger.access$handleMessage(CoreMessenger.kt:17) at com.github.continuedev.continueintellijextension.continue.CoreMessenger$startContinueProcess$1.invoke(CoreMessenger.kt:41) at com.github.continuedev.continueintellijextension.continue.CoreMessenger$startContinueProcess$1.invoke(CoreMessenger.kt:41) at com.github.continuedev.continueintellijextension.continue.process.ContinueProcessHandler$1.invokeSuspend(ContinueProcessHandler.kt:33) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100) at kotlinx.coroutines.internal.SoftLimitedDispatcher$Worker.run(SoftLimitedDispatcher.kt:130) at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:89) at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:613) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:1183) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:778) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:765)

and this one

2025-10-14 10:40:34,175 [5473396] WARN - #c.i.u.j.JBCefClient - JavaScript query pool is over [size: 200] java.lang.Throwable at com.intellij.ui.jcef.JBCefClient$JSQueryPool.useFreeSlot(JBCefClient.java:194) at com.intellij.ui.jcef.JBCefJSQuery.create(JBCefJSQuery.java:63) at com.intellij.ui.jcef.JBCefBrowserJsCall.createQueryWithinScope(JBCefBrowserJsCall.kt:167) at com.intellij.ui.jcef.JBCefBrowserJsCall.createResultHandlerQueryWithinScope(JBCefBrowserJsCall.kt:152) at com.intellij.ui.jcef.JBCefBrowserJsCall.invoke(JBCefBrowserJsCall.kt:135) at com.intellij.ui.jcef.JBCefBrowserJsCallKt.executeJavaScriptAsync(JBCefBrowserJsCall.kt:58) at com.github.continuedev.continueintellijextension.browser.ContinueBrowser.sendToWebview(ContinueBrowser.kt:88) at com.github.continuedev.continueintellijextension.continue.CoreMessenger.handleMessage(CoreMessenger.kt:60) at com.github.continuedev.continueintellijextension.continue.CoreMessenger.access$handleMessage(CoreMessenger.kt:17) at com.github.continuedev.continueintellijextension.continue.CoreMessenger$startContinueProcess$1.invoke(CoreMessenger.kt:41) at com.github.continuedev.continueintellijextension.continue.CoreMessenger$startContinueProcess$1.invoke(CoreMessenger.kt:41) at com.github.continuedev.continueintellijextension.continue.process.ContinueProcessHandler$1.invokeSuspend(ContinueProcessHandler.kt:33) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100) at kotlinx.coroutines.internal.SoftLimitedDispatcher$Worker.run(SoftLimitedDispatcher.kt:130) at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:89) at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:613) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:1183) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:778) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:765) 2025-10-14 10:40:34,176 [5473397] WARN - #c.i.u.j.JBCefJSQuery - Set the property JBCefClient.Properties.JS_QUERY_POOL_SIZE to use JBCefJSQuery after the browser has been created java.lang.IllegalStateException at com.intellij.ui.jcef.JBCefJSQuery.create(JBCefJSQuery.java:66) at com.intellij.ui.jcef.JBCefBrowserJsCall.createQueryWithinScope(JBCefBrowserJsCall.kt:167) at com.intellij.ui.jcef.JBCefBrowserJsCall.createResultHandlerQueryWithinScope(JBCefBrowserJsCall.kt:152) at com.intellij.ui.jcef.JBCefBrowserJsCall.invoke(JBCefBrowserJsCall.kt:135) at com.intellij.ui.jcef.JBCefBrowserJsCallKt.executeJavaScriptAsync(JBCefBrowserJsCall.kt:58) at com.github.continuedev.continueintellijextension.browser.ContinueBrowser.sendToWebview(ContinueBrowser.kt:88) at com.github.continuedev.continueintellijextension.continue.CoreMessenger.handleMessage(CoreMessenger.kt:60) at com.github.continuedev.continueintellijextension.continue.CoreMessenger.access$handleMessage(CoreMessenger.kt:17) at com.github.continuedev.continueintellijextension.continue.CoreMessenger$startContinueProcess$1.invoke(CoreMessenger.kt:41) at com.github.continuedev.continueintellijextension.continue.CoreMessenger$startContinueProcess$1.invoke(CoreMessenger.kt:41) at com.github.continuedev.continueintellijextension.continue.process.ContinueProcessHandler$1.invokeSuspend(ContinueProcessHandler.kt:33) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100) at kotlinx.coroutines.internal.SoftLimitedDispatcher$Worker.run(SoftLimitedDispatcher.kt:130) at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:89) at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:613) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:1183) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:778) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:765)

I'll take a look in the logfiles again on the next crash

Hakenadu avatar Oct 14 '25 09:10 Hakenadu

@RomneyDa already crashed again

I opened the chat window, let the IDE running in the background for some time and this is the result:

Image

which looks totally fine on the screenshot but none of the controls are clickable the chat window is completely unresponsive.

again nothing interesting in the continue logs but in the intellij logs i can find the following error:

java.lang.IllegalStateException: Failed to execute the requested JS expression. The related JCEF browser in not initialized. at com.intellij.ui.jcef.JBCefBrowserJsCall.invoke(JBCefBrowserJsCall.kt:113) at com.intellij.ui.jcef.JBCefBrowserJsCallKt.executeJavaScriptAsync(JBCefBrowserJsCall.kt:58) at com.github.continuedev.continueintellijextension.browser.ContinueBrowser.sendToWebview(ContinueBrowser.kt:88) at com.github.continuedev.continueintellijextension.continue.CoreMessenger.handleMessage(CoreMessenger.kt:60) at com.github.continuedev.continueintellijextension.continue.CoreMessenger.access$handleMessage(CoreMessenger.kt:17) at com.github.continuedev.continueintellijextension.continue.CoreMessenger$startContinueProcess$1.invoke(CoreMessenger.kt:41) at com.github.continuedev.continueintellijextension.continue.CoreMessenger$startContinueProcess$1.invoke(CoreMessenger.kt:41) at com.github.continuedev.continueintellijextension.continue.process.ContinueProcessHandler$1.invokeSuspend(ContinueProcessHandler.kt:33) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100) at kotlinx.coroutines.internal.SoftLimitedDispatcher$Worker.run(SoftLimitedDispatcher.kt:130) at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:89) at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:613) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:1183) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:778) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:765)

Hakenadu avatar Oct 14 '25 11:10 Hakenadu

@RomneyDa I can reproduce the error on my device.

Case 1

13:23 Start IntelliJ with Continue Chat Window -> minimize IntelliJ with Chat Window opened 13:26 Maximize IntelliJ again -> Continue Chat is frozen

2025-10-14 13:23:10,374 [  12206]   INFO - STDERR - JCEF_I(23:10:373): Found free tcp-port 6188 for server.
2025-10-14 13:23:10,374 [  12206]   INFO - STDERR - JCEF_I(23:10:374): Found free tcp-port 6189 for java-handlers.
2025-10-14 13:23:10,389 [  12221]   INFO - STDERR - JCEF_V(23:10:385): Created CefServer instance. Transport port=6188 (backward port=6189). Params:
2025-10-14 13:23:10,389 [  12221]   INFO - STDERR - [--disable-features=SpareRendererForSitePerProcess, --disable-gpu-process-crash-limit, --proxy-server=censored, --disable-component-update, --autoplay-policy=no-user-gesture-required]| log_file=C:\Users\censored\AppData\Local\JetBrains\IntelliJIdea2025.2\log\jcef_1548.log, log_severity=LOGSEVERITY_DISABLE
2025-10-14 13:23:10,432 [  12264]   WARN - ContinueBrowser - Failed to execute the requested JS expression. The related JCEF browser in not initialized.
java.lang.IllegalStateException: Failed to execute the requested JS expression. The related JCEF browser in not initialized.
	at com.intellij.ui.jcef.JBCefBrowserJsCall.invoke(JBCefBrowserJsCall.kt:113)
	at com.intellij.ui.jcef.JBCefBrowserJsCallKt.executeJavaScriptAsync(JBCefBrowserJsCall.kt:58)
	at com.github.continuedev.continueintellijextension.browser.ContinueBrowser.sendToWebview(ContinueBrowser.kt:88)
	at com.github.continuedev.continueintellijextension.continue.CoreMessenger.handleMessage(CoreMessenger.kt:60)
	at com.github.continuedev.continueintellijextension.continue.CoreMessenger.access$handleMessage(CoreMessenger.kt:17)
	at com.github.continuedev.continueintellijextension.continue.CoreMessenger$startContinueProcess$1.invoke(CoreMessenger.kt:41)
	at com.github.continuedev.continueintellijextension.continue.CoreMessenger$startContinueProcess$1.invoke(CoreMessenger.kt:41)
	at com.github.continuedev.continueintellijextension.continue.process.ContinueProcessHandler$1.invokeSuspend(ContinueProcessHandler.kt:33)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100)
	at kotlinx.coroutines.internal.SoftLimitedDispatcher$Worker.run(SoftLimitedDispatcher.kt:130)
	at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:89)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:613)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:1183)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:778)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:765)

Case 2

13:30 Start IntelliJ with Continue Chat Window -> minimize IntelliJ with Chat Window opened 13:33 Maximize IntelliJ again -> Continue Chat is frozen

2025-10-14 13:30:16,080 [  11457]   WARN - ContinueBrowser - Failed to execute the requested JS expression. The related JCEF browser in not initialized.
java.lang.IllegalStateException: Failed to execute the requested JS expression. The related JCEF browser in not initialized.
	at com.intellij.ui.jcef.JBCefBrowserJsCall.invoke(JBCefBrowserJsCall.kt:113)
	at com.intellij.ui.jcef.JBCefBrowserJsCallKt.executeJavaScriptAsync(JBCefBrowserJsCall.kt:58)
	at com.github.continuedev.continueintellijextension.browser.ContinueBrowser.sendToWebview(ContinueBrowser.kt:88)
	at com.github.continuedev.continueintellijextension.continue.CoreMessenger.handleMessage(CoreMessenger.kt:60)
	at com.github.continuedev.continueintellijextension.continue.CoreMessenger.access$handleMessage(CoreMessenger.kt:17)
	at com.github.continuedev.continueintellijextension.continue.CoreMessenger$startContinueProcess$1.invoke(CoreMessenger.kt:41)
	at com.github.continuedev.continueintellijextension.continue.CoreMessenger$startContinueProcess$1.invoke(CoreMessenger.kt:41)
	at com.github.continuedev.continueintellijextension.continue.process.ContinueProcessHandler$1.invokeSuspend(ContinueProcessHandler.kt:33)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100)
	at kotlinx.coroutines.internal.SoftLimitedDispatcher$Worker.run(SoftLimitedDispatcher.kt:130)
	at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:89)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:613)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:1183)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:778)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:765)

so this could be related to IntelliJ being minimized (even for a short time)

I also noticed another error in the logs on both occasions. It appears to be related to a group policy on my device. While I believe this issue may not be connected, I’m including it here just in case it’s relevant.

org.jvnet.winp.WinpException: java.io.IOException: Cannot run program "C:\Users\user\AppData\Local\JetBrains\IntelliJIdea2025.2\tmp\sendctrlc.x64.B02191CB70385B094C410A8C27775ABA.exe": CreateProcess error=1260, Dieses Programm wurde durch eine Gruppenrichtlinie geblockt. Wenden Sie sich an den Systemadministrator, um weitere Informationen zu erhalten
	at org.jvnet.winp.CtrlCSender.sendCtrlC(CtrlCSender.java:21)
	at org.jvnet.winp.Native.sendCtrlC(Native.java:105)
	at org.jvnet.winp.WinProcess.sendCtrlC(WinProcess.java:86)
	at com.intellij.execution.process.LocalProcessServiceImpl.sendWinProcessCtrlC(LocalProcessServiceImpl.kt:77)
	at com.intellij.execution.process.LocalProcessServiceImpl.sendWinProcessCtrlC(LocalProcessServiceImpl.kt:69)
	at com.intellij.execution.process.WinProcessTerminator.terminateWinProcessGracefully$lambda$0(WinProcessTerminator.kt:30)
	at com.intellij.execution.process.WinProcessTerminator.terminateWinProcessGracefully(WinProcessTerminator.kt:48)
	at com.intellij.execution.process.WinProcessTerminator.terminateWinProcessGracefully$default(WinProcessTerminator.kt:26)
	at com.intellij.execution.process.WinProcessTerminator.terminateWinProcessGracefully(WinProcessTerminator.kt)
	at com.intellij.execution.process.KillableProcessHandler.destroyProcessGracefully(KillableProcessHandler.java:181)
	at com.intellij.execution.process.KillableProcessHandler.doDestroyProcess(KillableProcessHandler.java:123)
	at com.intellij.execution.process.KillableProcessHandler.destroyProcessImpl(KillableProcessHandler.java:111)
	at com.intellij.execution.process.ProcessHandler.lambda$destroyProcess$0(ProcessHandler.java:127)
	at com.intellij.execution.process.ProcessHandler$TasksRunner.execute(ProcessHandler.java:325)
	at com.intellij.execution.process.ProcessHandler.destroyProcess(ProcessHandler.java:124)
	at com.intellij.execution.process.ScriptRunnerUtil.terminateProcessHandler(ScriptRunnerUtil.java:244)
	at com.intellij.lang.javascript.service.JSLanguageServiceExecutorImpl.doDispose$lambda$7$lambda$6$lambda$4(JSLanguageServiceExecutorImpl.kt:303)
	at com.intellij.lang.javascript.service.JSLanguageServiceTracerUtilKt.withServiceTraceSpan(JSLanguageServiceTracerUtil.kt:42)
	at com.intellij.lang.javascript.service.JSLanguageServiceTracerUtilKt.withServiceTraceSpan$default(JSLanguageServiceTracerUtil.kt:39)
	at com.intellij.lang.javascript.service.JSLanguageServiceExecutorImpl.doDispose$lambda$7(JSLanguageServiceExecutorImpl.kt:302)
	at java.base/java.util.concurrent.CompletableFuture$UniRun.tryFire(CompletableFuture.java:787)
	at java.base/java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:482)
	at com.intellij.util.concurrency.ChildContext$runInChildContext$1.invoke(propagation.kt:167)
	at com.intellij.util.concurrency.ChildContext$runInChildContext$1.invoke(propagation.kt:167)
	at com.intellij.util.concurrency.ChildContext.runInChildContext(propagation.kt:173)
	at com.intellij.util.concurrency.ChildContext.runInChildContext(propagation.kt:167)
	at com.intellij.util.concurrency.ContextRunnable.run(ContextRunnable.java:27)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
	at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:735)
	at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:732)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
	at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:732)
	at java.base/java.lang.Thread.run(Thread.java:1583)

Hakenadu avatar Oct 14 '25 11:10 Hakenadu

I can add the following:

I use Continue with OpenRouter and have to restart the IDE almost every 10 minutes because Continue freezes and no longer accepts user input. The error pattern is exactly the same as @bdavj's. This happens in both Agent Mode and Plan Mode. I use Jetbrains Rider on Windows 11. Autocomplete is disabled and only Chat-Window is used.

friefa avatar Oct 16 '25 10:10 friefa

Thanks for all the detailed reports here @friefa @Hakenadu @bdavj

We made a pretty significant attempt at resolving the "robj" is null error that I see in the logs here but seems like it wasn't successful - see https://github.com/continuedev/continue/pull/6611 and https://github.com/continuedev/continue/pull/6611

As a sanity check, could folks try following the advice outlined here? https://youtrack.jetbrains.com/issue/IJPL-186252/JCEF.-NullPointerException-Cannot-read-field-objId-because-robj-is-null

This should already be set in our config here but worth a shot to try manually

Patrick-Erichsen avatar Oct 22 '25 01:10 Patrick-Erichsen

Hi folks, I spent the better part of a day trying to debug following the repro steps that @Hakenadu outlined but without luck.

Problem analysis

I reproduced the crash a handful of times but very intermittently. When I did repro the crash, unsurprisingly we were overflowing the JVM heap. My initial hunch was that each new instance of the IDE spins up a new JCEFBrowser that contributes to that, but my understanding after researching more is that the browser actually runs off of the heap as a native process and doesn't contribute to that heap overflow.

So, my best guess is that we have too many messages being sent from the IDE -> browser that aren't getting processed in the browser quickly enough, each occupying one of our 200 query pools and storing the relevant payload on the heap.

For what it's worth we had a member of the team recently spend 2+ months exclusively on improving the stability of our JetBrains extension. Building a full web app inside of JetBrains is hard.

With that being said there is a temporary solution that will hopefully work for folks as we further investigate.

Temporary workaound

Visit Help → Change Memory Settings, double the memory allocation 4096 MB, then click “Save and Restart.”


@pedroll @bdavj @Hakenadu @friefa if you all could attempt the workaround above and report back, that would be helpful.

@Hakenadu , I appreciated your detailed logs in my troubleshooting efforts. If you have any other thoughts on how we can pinpoint the issue here, that would be helpful. Since you've been able to repro quite consistently, if you were able to take a stab at addressing the issue, that would be extremely helpful!

A git bisect could probably get to the bottom of this if the issue is from some of the recent updates we made to our JetBrains logic, but again, I've been unable to reliably repro which prevents me from bisecting.

Patrick-Erichsen avatar Oct 23 '25 20:10 Patrick-Erichsen

Hi @Patrick-Erichsen, thank you and your team for your investigation and explanation.

Following your suggestion, I’ve doubled the memory allocation, and so far I haven’t been able to reproduce the issue.

I’ll continue to monitor the situation over the next week.

Thank you again for your support!

Hakenadu avatar Oct 24 '25 23:10 Hakenadu

Although I am currently unable to consistently reproduce it, I have unfortunately found that the problem still occurs.

However, it occurs now less frequently.

Hakenadu avatar Oct 26 '25 19:10 Hakenadu

Hello, same problem here : Continue's panel frequently freeze and I am forced to restart Intellij. I try the proposed fix (increase memory), but as Hakenadu the problem still occurs (less frequently (approx every 1/2 hours))

nicolasgrd avatar Oct 27 '25 16:10 nicolasgrd

https://github.com/continuedev/continue/issues/7996 Whenever I encounter this process crashing, the same issue will also occur.

MushR00m avatar Oct 28 '25 07:10 MushR00m

I've reported this issue on Windows before:https://github.com/continuedev/continue/issues/6110

This is a classic and common scenario. Lately, I've been experiencing frequent plugin freezes on my Mac, so I'm compelled to report it again. I'm developing in IntelliJ Studio and leave my computer for lunch at noon. When I return an hour later, it's already gone to sleep. When I shake my mouse to wake it up, the IntelliJ Studio UI freezes, and I can't interact with it at all.

I believe this issue has been around for a while. My Mac has version 1.028 installed, which I previously used and considered stable, so I haven't upgraded. Seeing so many people still reporting this issue, I believe it still exists. However, I'm not an expert in this area, so I can only report this issue and the scenarios in which it frequently occurs.

I'm not sure if it's due to excessive memory usage, as others have suggested. In my case, it seems like some IntelliJ WebView service is stopped when the system goes into sleep mode and wakes up again.

AfterStories avatar Oct 28 '25 12:10 AfterStories

@AfterStories (and other folks invested in this fix) - mind taking a look at https://github.com/continuedev/continue/issues/8452 ? Another user has proposed a potential solution here, if other folks with Kotlin experience could give feedback on the proposal that would help move things along 👍

Patrick-Erichsen avatar Oct 28 '25 17:10 Patrick-Erichsen

experiencing the issue in different version of Continue in JetBrains

aaronpliu avatar Oct 29 '25 10:10 aaronpliu

Our team is also frequently encountering this issue, and it's been a significant source of disruption. I can confirm that this appears to be a GUI-only issue, as the autocomplete still work correctly which means core and extension are not affected. We attempted to increase the pool size from 200 to 2000, but the issue persisted. After some investigation, I believe the problem is rooted in the "Case 2" scenario described by @Hakenadu , specifically the JCEF browser in not initialized error. The error log points to a potential issue in ContinueBrowserService.kt. It seems the browser instance is disposed of under certain conditions but is not re-initialized until the IDE is restarted. This would explain why the GUI elements that depend on it fail to render. I hope this information helps in pinpointing the root cause.

QianKuang8 avatar Oct 29 '25 13:10 QianKuang8

Open Dev tool in UI, I can see many error messages about "windows.cefQuery_xxxxxx"

Image

I also speculate that this issue is related to the performance of JCEF webview browser. I have seen many log outputs as follows: in [ Run Extension ] terminal,there are many warnings related to JSQueRY-POLL_SIZE ` WARN - #c.i.u.j.JBCefClient - JavaScript query pool is over [size: 200]

WARN - #c.i.u.j.JBCefJSQuery - Set the property JBCefClient.Properties.JS_QUERY_POOL_SIZE to use JBCefJSQuery after the browser has been created `

Details"

2025-10-29 21:58:52,758 [ 413340]   WARN - #c.i.u.j.JBCefClient - JavaScript query pool is over [size: 200]
java.lang.Throwable
	at com.intellij.ui.jcef.JBCefClient$JSQueryPool.useFreeSlot(JBCefClient.java:199)
	at com.intellij.ui.jcef.JBCefJSQuery.create(JBCefJSQuery.java:63)
	at com.intellij.ui.jcef.JBCefBrowserJsCall.createQueryWithinScope(JBCefBrowserJsCall.kt:169)
	at com.intellij.ui.jcef.JBCefBrowserJsCall.createResultHandlerQueryWithinScope(JBCefBrowserJsCall.kt:154)
	at com.intellij.ui.jcef.JBCefBrowserJsCall.invoke(JBCefBrowserJsCall.kt:137)
	at com.intellij.ui.jcef.JBCefBrowserJsCallKt.executeJavaScriptAsync(JBCefBrowserJsCall.kt:60)
	at com.github.continuedev.continueintellijextension.toolWindow.ContinueBrowser.sendToWebview(ContinueBrowser.kt:124)
	at com.github.continuedev.continueintellijextension.toolWindow.ContinueBrowser$2$respond$1.invoke(ContinueBrowser.kt:50)
	at com.github.continuedev.continueintellijextension.toolWindow.ContinueBrowser$2$respond$1.invoke(ContinueBrowser.kt:49)
	at com.github.continuedev.continueintellijextension.continue.CoreMessenger.handleMessage(CoreMessenger.kt:62)
	at com.github.continuedev.continueintellijextension.continue.CoreMessenger.access$handleMessage(CoreMessenger.kt:14)
	at com.github.continuedev.continueintellijextension.continue.CoreMessenger$startContinueProcess$1.invoke(CoreMessenger.kt:37)
	at com.github.continuedev.continueintellijextension.continue.CoreMessenger$startContinueProcess$1.invoke(CoreMessenger.kt:37)
	at com.github.continuedev.continueintellijextension.continue.process.ContinueProcessHandler$1.invokeSuspend(ContinueProcessHandler.kt:30)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:108)
	at kotlinx.coroutines.internal.LimitedDispatcher$Worker.run(LimitedDispatcher.kt:115)
	at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:103)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:584)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:793)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:697)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:684)



2025-10-29 21:58:52,761 [ 413343]   WARN - #c.i.u.j.JBCefJSQuery - Set the property JBCefClient.Properties.JS_QUERY_POOL_SIZE to use JBCefJSQuery after the browser has been created
java.lang.IllegalStateException
	at com.intellij.ui.jcef.JBCefJSQuery.create(JBCefJSQuery.java:66)
	at com.intellij.ui.jcef.JBCefBrowserJsCall.createQueryWithinScope(JBCefBrowserJsCall.kt:169)
	at com.intellij.ui.jcef.JBCefBrowserJsCall.createResultHandlerQueryWithinScope(JBCefBrowserJsCall.kt:154)
	at com.intellij.ui.jcef.JBCefBrowserJsCall.invoke(JBCefBrowserJsCall.kt:137)
	at com.intellij.ui.jcef.JBCefBrowserJsCallKt.executeJavaScriptAsync(JBCefBrowserJsCall.kt:60)
	at com.github.continuedev.continueintellijextension.toolWindow.ContinueBrowser.sendToWebview(ContinueBrowser.kt:124)
	at com.github.continuedev.continueintellijextension.toolWindow.ContinueBrowser$2$respond$1.invoke(ContinueBrowser.kt:50)
	at com.github.continuedev.continueintellijextension.toolWindow.ContinueBrowser$2$respond$1.invoke(ContinueBrowser.kt:49)
	at com.github.continuedev.continueintellijextension.continue.CoreMessenger.handleMessage(CoreMessenger.kt:62)
	at com.github.continuedev.continueintellijextension.continue.CoreMessenger.access$handleMessage(CoreMessenger.kt:14)
	at com.github.continuedev.continueintellijextension.continue.CoreMessenger$startContinueProcess$1.invoke(CoreMessenger.kt:37)
	at com.github.continuedev.continueintellijextension.continue.CoreMessenger$startContinueProcess$1.invoke(CoreMessenger.kt:37)
	at com.github.continuedev.continueintellijextension.continue.process.ContinueProcessHandler$1.invokeSuspend(ContinueProcessHandler.kt:30)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:108)
	at kotlinx.coroutines.internal.LimitedDispatcher$Worker.run(LimitedDispatcher.kt:115)
	at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:103)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:584)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:793)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:697)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:684)

AfterStories avatar Oct 29 '25 14:10 AfterStories

I (and a couple of other users) have tried the VM arg. Seen no crashes since!

bdavj avatar Oct 29 '25 15:10 bdavj

Plugin still freezes too. IntelliJ IDEA 2025.2.4 Continue IDE Version 1.0.47 & 1.0.48 I use the plugin by making requests. Everything works fine. I minimize the plugin windows and after a certain delay, the interface becomes frozen. And eventually nothing is displayed anymore :

Image

vilasyra59 avatar Oct 29 '25 15:10 vilasyra59

Lot of activity on this thread! Thanks everyone for providing all the helpful logs and anecdotes.

I'm relatively confident that @houssemzaier has identified the root cause here: https://github.com/continuedev/continue/issues/8452#issuecomment-3457646735

And he has volunteered to submit a fix! 🙏

I do think that even with this fix we will still get the errors that @AfterStories and @QianKuang8 reported, ie JavaScript query pool is over [size: 200].

We haven't increased the pool size because it would just result in the heap overflowing even faster, but once the underlying memory issues are resolved from @houssemzaier 's work, I think the next step is to attempt bumping the query pool, maybe just double to 400.

Patrick-Erichsen avatar Oct 29 '25 16:10 Patrick-Erichsen

Thanks for the shoutout @Patrick-Erichsen!

I'm focused on getting the Gson singleton PR right. Working through the critical paths now, we should have something ready for review in the next day or two.

Really appreciate the opportunity to contribute to Continue! 👍

houssemzaier avatar Oct 29 '25 17:10 houssemzaier

I (and a couple of other users) have tried the VM arg. Seen no crashes since!

Spoke too soon. Crashed this morning :(

bdavj avatar Oct 30 '25 08:10 bdavj

@houssemzaier 's PR is a good step forward in reducing the chance of JCEF getting stuck. I've noticed that it's still possible to encounter a state where the GUI freezes and requires an IDE restart to recover. As a potential solution, what if we try to recreate the JCEF instance whenever the browser disappears and can never receive the message from extension? This might cause some minor data loss, but it would be far less disruptive than a full IDE restart.

QianKuang8 avatar Oct 30 '25 13:10 QianKuang8

Thanks for the feedback @QianKuang8! You're so right, the Gson optimization reduces memory pressure, but doesn't address all freeze scenarios.

Your JCEF recovery idea makes sense. Losing the current conversation is definitely better than restarting the entire IDE.

This feels like a good follow-up improvement. I've submitted the Gson PR (#8524) as a first step. I'll continue profiling to identify any other contributing factors.

Happy to collaborate!

houssemzaier avatar Oct 31 '25 15:10 houssemzaier

https://github.com/openpilot-hub/devpilot-intellij/blob/545e5aad139a6f728b33d7805a6b0ee3963cdc6e/src/main/java/com/zhongan/devpilot/gui/toolwindows/chat/DevPilotChatToolWindow.java#L112 I found a similar jetbrains plugin processing mechanism, including reusing json instances and reload jbcef window strategy. Maybe this problem can be referred to, and the effect is still being observed.

HQ1363 avatar Nov 02 '25 09:11 HQ1363

https://github.com/continuedev/continue/pull/8524 has been merged! Thank you again @houssemzaier .

This will be available in v1.0.52 which will be published in a few days once the release clears the JetBrains review process. Thank you @RomneyDa for getting the release out!

It would be helpful if folks could report back once that is out and let us know if the freezing is fixed.

Patrick-Erichsen avatar Nov 05 '25 00:11 Patrick-Erichsen