-
Notifications
You must be signed in to change notification settings - Fork 77
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
"Restart Extension Host" or any similar command hangs all active interpreter sessions #2683
Comments
I looked at this a little bit today, seeing where we were doing positron/src/vs/workbench/services/extensions/electron-sandbox/nativeExtensionService.ts Lines 734 to 742 in ffa3482
I'm pretty sure from my initial poke around that all instances where Positron might stop and then start the extension host are currently broken: |
Can we shut down a |
Yes. I have a change that does a better job handling session managers as it's also needed to make things work correctly with a remote extension host. (not yet merged) We basically need to detect that this has happened and do a reconnect to recreate all of the state in the extensions that gets lost when the host restarts. |
Sounds great! I'm going to assign you @jmcphers so we know this issue is being addressed. |
Did some exploratory work on this today and the results were not great. Because the extensions hold a lot of state w/r/t the registered and active runtimes, a forced restart of all extensions results in a lot of lost data. For example:
To fix this, we need to:
|
In Positron 2024.05.0 (Universal) build 1313, I now see a great experience for "Restart Extension Host": restart-ext-host.movI see an intermittent remaining problem with the original reported workflow around "Save Workspace As" that I have outlined in #3300. |
Positron Version:
Steps to reproduce the issue:
Nothing happens; the console hangs and doesn't run the commands.
From a cursory investigation, it appears that the issue here is that the extensions get soft-restarted when we switch context to the newly saved workspace file. This soft-restart causes them to lose all their state and forget about the active runtime sessions, even though the UI still shows the sessions as active.
Originally reported by a beta user: https://github.com/posit-dev/positron-beta/discussions/74; a video demo is available there.
What did you expect to happen?
Interpreters should be usable after running this command.
The text was updated successfully, but these errors were encountered: