-
Notifications
You must be signed in to change notification settings - Fork 30.7k
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
Extension Host terminated unexpectedly #186912
Comments
As mentioned in the linked issue, it happens for me as well. I can reproduce it with Insiders version too and the same happens with a few older julia-vscode extensions I tested. VS Code version
|
There seems to be an issue with spawning a process. symbolicated-6e.log |
I'd expect that this happens when we try to spawn the Julia process that powers the LS. Any chance we can debug this further? I assume we can't handle libuv failing to spawn a process anywhere in the extension code, right? |
As asked in the julia-vscode/julia-vscode#3327 (comment) I want to add that I can reproduce this as well.
|
Sorry for the delayed response, can you please provide the output of the following steps to understand the error
Additionally, once the extension host crashes open command palette in VSCode and run |
@pfitzseb unfortunately this particular error is a fatal error that cannot be handled in the application layer. But we should be able to see the output of |
I have done this, see attached. |
Same here |
Thanks for the logs, in both cases the launching of child process triggers a fatal error from Node.js at https://github.com/libuv/libuv/blob/0d78f3c758fdc41019093353a7ff4fed83005ac9/src/win/process.c#L1142 due to @kafisatz I have simplified the Julia language server process spawn call from your logs into the following script, can you run it with node v18.15.0 which can be downloaded from https://nodejs.org/en/download, the steps would be
const { spawn } = require('node:child_process');
const args = [
'--startup-file=no',
'--history-file=no',
'--depwarn=no',
'main.jl',
'c:\\Users\\bernhard.koenig\\Documents\\Repositories\\InfluxDBClient.jl',
'--debug=no',
'c:\\Users\\bernhard.koenig\\AppData\\Roaming\\Code\\User\\globalStorage\\julialang.language-julia',
'download',
'https://www.julia-vscode.org/symbolcache',
'--detached=no'
]
const server = spawn('C:\\Users\\bernhard.koenig\\.julia\\juliaup\\julia-1.9.3+0.x64.w64.mingw32\\bin\\julia.exe', args, {
cwd: 'c:\\Users\\bernhard.koenig\\.vscode\\extensions\\julialang.language-julia-1.51.2\\scripts\\languageserver',
env: {
JULIA_DEPOT_PATH: 'c:\\Users\\bernhard.koenig\\AppData\\Roaming\\Code\\User\\globalStorage\\julialang.language-julia\\lsdepot\\v1',
JULIA_LOAD_PATH: ';',
HOME: 'C:\\Users\\bernhard.koenig',
JULIA_LANGUAGESERVER: '1',
...process.env
},
detached: false,
windowsHide: false,
stdio: 'inherit'
}); |
Apparrently Julia expects 8 arguments. if length(Base.ARGS) != 8
|
@pfitzseb can you help with above error, I would like to create a minimal repro outside VSCode since this is an issue with Node.js. |
It seems we need additional arguments in see or here |
I added two empty arguments in the spawn_julia_ls.js file
Then things seem to work EDIT: the process only shuts down if I hit enter. If I don't press any key it keeps running and the last message is 'Received new data from Julia Symbol Server..." output is:
|
Thanks @kafisatz for fixing the test case
No, I was expecting the error |
Can you run our bisect tool in the terminal |
Looking at the vscode_error.log above, the argument right after |
I think it is fine to skip the pipe name, looking at the code it is only responsible for monitory crashes from the language server. |
Only on the first run I had to
|
@pfitzseb ![]() |
I can reproduce the extension host termination with VSCode 1.77.3 and julia-vscode v1.47.2. |
Thanks for confirming, that eliminates the allocator changes we adopted for Electron 22 update. Refs #177338 |
This issue has been closed automatically because it needs more information and has not had recent activity. See also our issue reporting guidelines. Happy Coding! |
Thanks for looking into this, @deepak1556. Do you need any more info about the extension? |
Might be fixed by libuv/libuv#4152. |
Once the libuve PR us merged, do I need to wait for the next minor julia release? |
Thanks for sharing the fix @pfitzseb , I will backport the fix into Electron as next step. |
Steps for verification:
Perform steps 1-4 again in latest insiders with the fix and it should not crash. |
Seems to be specific to windows, I cannot repro the crash on a Mac. |
Yeah, the underlying issue seems to be in the Windows kernel. |
Yes
बुध, 25 अक्तू॰ 2023, 11:15 pm को Sebastian Pfitzner <
***@***.***> ने लिखा:
… Yeah, the underlying issue <libuv/libuv#4152>
seems to be in the Windows kernel.
—
Reply to this email directly, view it on GitHub
<#186912 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/BB4WCLHDSOMU3SDMTEPUGMLYBFF47AVCNFSM6AAAAAAZ4NUX2GVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONZZG42TGNJVG4>
.
You are receiving this because you are subscribed to this thread.Message
ID: ***@***.***>
|
Type: Bug
This issue is related to the Julia extension.
I filed an issue there, but I also filing it here (as suggested by @pfitzseb).
As per the initial post of the above link, all extension work perfectly fine when the Julia extension is disabled.
here are dmp files as per this
dmp-files.zip
VS Code version: Code 1.79.2 (695af09, 2023-06-14T08:57:04.379Z)
OS version: Windows_NT x64 10.0.22621
Modes:
System Info
canvas_oop_rasterization: disabled_off
direct_rendering_display_compositor: disabled_off_ok
gpu_compositing: enabled
multiple_raster_threads: enabled_on
opengl: enabled_on
rasterization: enabled
raw_draw: disabled_off_ok
video_decode: enabled
video_encode: enabled
vulkan: disabled_off
webgl: enabled
webgl2: enabled
webgpu: enabled
Extensions (50)
(2 theme extensions excluded)
A/B Experiments
The text was updated successfully, but these errors were encountered: