microsoft / vscode

Visual Studio Code
https://code.visualstudio.com
MIT License
164.46k stars 29.36k forks source link

Extension host terminated unexpectedly due to GitHub copilot #176562

Closed edwardspresume closed 1 year ago

edwardspresume commented 1 year ago

Type: Bug

My extensions keep terminating. GitHub copilot seem to be the reason for the crash for myself and others. Disabling copilot stops the crashing for us, but we need a better solution

VS Code version: Code 1.76.0 (92da9481c0904c6adfe372c12da3b7748d74bdcb, 2023-03-01T10:25:16.105Z) OS version: Linux x64 6.1.12-1-MANJARO Modes: Sandboxed: No

System Info |Item|Value| |---|---| |CPUs|Intel(R) Core(TM) i7-4710HQ CPU @ 2.50GHz (8 x 3292)| |GPU Status|2d_canvas: enabled
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
skia_renderer: enabled_on
video_decode: disabled_software
video_encode: disabled_software
vulkan: disabled_off
webgl: enabled
webgl2: enabled
webgpu: disabled_off| |Load (avg)|6, 4, 3| |Memory (System)|15.51GB (8.98GB free)| |Process Argv|code/projects/url_finder/v2 --crash-reporter-id 9ca28901-9313-4681-bac3-c399ba55c953| |Screen Reader|no| |VM|0%| |DESKTOP_SESSION|undefined| |XDG_CURRENT_DESKTOP|undefined| |XDG_SESSION_DESKTOP|undefined| |XDG_SESSION_TYPE|undefined|
Extensions (89) Extension|Author (truncated)|Version ---|---|--- better-comments|aar|3.0.2 Bookmarks|ale|13.3.1 project-manager|ale|12.7.0 scope-bar|amo|0.2.1 chronicler|arc|0.1.16 svelte-intellisense|ard|0.7.1 astro-vscode|ast|0.29.6 tailwind-docs|aus|2.0.0 jsoncrack-vscode|Ayk|1.0.8 vscode-tailwindcss|bra|0.9.7 buildt-vscode|Bui|0.2.5 turbo-console-log|Cha|2.7.1 regex|chr|0.4.0 clippy-ai|cli|0.5.0 gitignore|cod|0.9.0 vscode-markdownlint|Dav|0.49.0 vscode-eslint|dba|2.4.0 vscode-faker|dee|2.0.0 vscode-axe-linter|deq|4.6.0 git-extension-pack|don|0.1.3 githistory|don|0.6.20 es7-react-js-snippets|dsz|4.4.3 gitlens|eam|13.3.2 vscode-html-css|ecm|1.13.1 EditorConfig|Edi|0.16.4 json-tools|eri|1.0.2 prettier-vscode|esb|9.10.4 vscode-svelte-snippets|fiv|0.5.0 code-runner|for|0.12.0 shell-format|fox|7.2.5 copilot|Git|1.77.9225 copilot-labs|Git|0.12.791 gc-excelviewer|Gra|4.2.56 todo-tree|Gru|0.0.224 headwind|hey|1.7.0 codesnap-plus|hui|1.4.1 output-colorizer|IBM|0.1.2 npm|ide|1.3.0 vscode-edit-csv|jan|0.7.3 vscode-text-pastry|jkj|1.3.1 svg|joc|1.5.0 vsc-python-indent|Kev|1.18.0 ts-error-translator|mat|0.8.0 web-accessibility|Max|0.2.83 rainbow-csv|mec|3.5.0 git-graph|mhu|1.30.0 fluent-icons|mig|0.0.18 dotenv|mik|1.0.1 vscode-scss|mrm|0.10.0 playwright|ms-|1.0.8 isort|ms-|2022.8.0 python|ms-|2023.4.0 vscode-pylance|ms-|2023.3.10 remote-ssh|ms-|0.98.0 remote-ssh-edit|ms-|0.84.0 remote-explorer|ms-|0.2.0 vscode-typescript-next|ms-|5.1.20230307 sqltools|mtx|0.27.1 color-highlight|nau|2.5.0 playwright-snippets|nit|1.0.1 es6-css-minify|olb|3.3.3 material-icon-theme|PKi|4.24.0 vscode-css-peek|pra|4.2.0 quicktype|qui|12.0.46 vscode-rapidapi-client|Rap|1.9.3 typescript-hero|rbb|3.0.0 LiveServer|rit|5.7.9 partial-diff|ryu|1.4.3 vscode-fileutils|sle|3.10.0 html-to-css-autocompletion|sol|1.1.2 sonarlint-vscode|Son|3.15.1 stepsize|Ste|1.0.13 code-spell-checker|str|2.19.0 svelte-vscode|sve|107.2.0 ts-quickfixes-extension|tam|1.15.0 open-in-browser|tec|2.0.0 vscode-mdx|uni|1.2.5 errorlens|use|3.7.0 intellicode-api-usage-examples|Vis|0.2.7 vscodeintellicode|Vis|1.2.30 console-ninja|Wal|0.0.81 quokka-vscode|Wal|1.0.527 wallaby-vscode|Wal|1.0.350 vscode-todo-highlight|way|1.0.5 vscode-import-cost|wix|3.3.0 JavaScriptSnippets|xab|1.8.0 markdown-all-in-one|yzh|3.5.0 material-theme|zhu|3.15.6 vscode-open-in-github|ziy|1.3.6
A/B Experiments ``` vsliv368:30146709 vsreu685:30147344 python383cf:30185419 vspor879:30202332 vspor708:30202333 vspor363:30204092 vslsvsres303:30308271 pythonvspyl392:30443607 vserr242:30382549 pythontb:30283811 vsjup518:30340749 pythonptprofiler:30281270 vshan820:30294714 vstes263cf:30335440 vscoreces:30445986 pythondataviewer:30285071 vscod805:30301674 binariesv615:30325510 bridge0708:30335490 bridge0723:30353136 cmake_vspar411:30581797 vsaa593cf:30376535 pythonvs932:30410667 cppdebug:30492333 vscaat:30438848 vsclangdf:30486550 c4g48928:30535728 dsvsc012:30540252 pynewvextcfv2:30681851 azure-dev_surveyone:30548225 pyindex848:30662994 nodejswelcome1cf:30587006 282f8724:30602487 pyind779:30671433 f6dab269:30613381 pythonsymbol12:30671437 a9j8j154:30646983 vsccsb:30677849 pythonms35:30680984 ```
fazofazaal commented 1 year ago

I am having the same issue. This is so annoying

tunayokumus commented 1 year ago

same here. Issue started happening today. Didn't install any new extensions in the last days. Seems to be an OOM issue. Using WSL2 backend.

VladSez commented 1 year ago

Not sure, if this is relevant, but after I disabled Github Copilot extension, looks like the issue is gone (at least for the last couple of hours it's not crashing)

I am on WSL2

ghana7989 commented 1 year ago

It is so frustrating that I have to reload just to expect a crash with in 5 mins or less. please fix this ASAP

nacmartin commented 1 year ago

Not sure, if this is relevant, but after I disabled Github Copilot extension, looks like the issue is gone (at least for the last couple of hours it's not crashing)

I am on WSL2

Yes, I have done the same and the sun shines again.

atomflunder commented 1 year ago

Not sure, if this is relevant, but after I disabled Github Copilot extension, looks like the issue is gone (at least for the last couple of hours it's not crashing)

I am on WSL2

Same here, thanks for the fix!

edwardspresume commented 1 year ago

Not sure, if this is relevant, but after I disabled Github Copilot extension, looks like the issue is gone (at least for the last couple of hours it's not crashing)

I am on WSL2

Thank you! This fixed it for me as well

Ali-AlDhamen commented 1 year ago

Not sure, if this is relevant, but after I disabled Github Copilot extension, looks like the issue is gone (at least for the last couple of hours it's not crashing)

I am on WSL2

same here been having this issue for a week now, it's annoying

starball5 commented 1 year ago

Related question on Stack Overflow: Extension host terminated unexpectedly 3 times within the last 5 minutes

TeddyCr commented 1 year ago

Same here. Having this issue for about a week. Quite unfortunate.

wasied commented 1 year ago

Same for me with Github Copilot. Quite annoying.

deepak1556 commented 1 year ago

Can users provide the following 2 logs,

1) Open Developer: Toggle Developer Tools and attach the generated log when extension host terminates 2) Start the application following the steps at https://github.com/microsoft/vscode/wiki/Native-Crash-Issues#creating-a-crash-report and attach the generated crash logs if available.

TeddyCr commented 1 year ago

I get a log of things from the developer tool, unsure which one to share. Let me know if that one help

abstractExtensionService.ts:931 Extension host (LocalProcess) terminated unexpectedly. Code: 7, Signal: unknown
[Extension Host] (node:15816) [DEP0005] DeprecationWarning: Buffer() is deprecated due to security and usability issues. Please use the Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() methods instead.
(Use `Code Helper (Plugin) --trace-deprecation ...` to show where the warning was created)

the 2) does not provide anything.

Looks like it does come from the copilot extension though, as soon as I re-enable it it the host terminates.

deepak1556 commented 1 year ago

Code: 7 seems like an exit due to OOM, @TeddyCr can you launch the application with code --verbose and attach the logs once extension host terminates.

TeddyCr commented 1 year ago

🤔 I am not sure what to share there. I get a big block of code from there /$HOME/.vscode/extensions/github.copilot-1.77.9225/dist/extension.js:8

deepak1556 commented 1 year ago

It would be great if you can share all the logs printed to the terminal, if not can you check for a line that has the following crashed with code 7 and reason .... I am mainly looking to confirm the value of reason.

nacmartin commented 1 year ago

@deepak1556 Does this help? I have cut two pieces of the crash that seem relevant. The full log is huge and has details of the propietary code I am working on (file paths mainly but still) . If this doesn't help I can try reproducing it while working on OS code later on and post a full log.

[85241:0315/115637.093965:INFO:CONSOLE(615)] "%c  ERR color: #f33 [Extension Hos
t] Error: spawn flow ENOENT
    at Process.ChildProcess._handle.onexit (node:internal/child_process:283:19)
    at onErrorNT (node:internal/child_process:478:16)
    at processTicksAndRejections (node:internal/process/task_queues:83:21)", sou
rce: vscode-file://vscode-app/Applications/Visual%20Studio%20Code.app/Contents/R
esources/app/out/vs/workbench/workbench.desktop.main.js (615)
[85241:0315/115637.094001:INFO:CONSOLE(90)] "%c[Extension Host] %cError: spawn f
low ENOENT
    at Process.ChildProcess._handle.onexit (node:internal/child_process:283:19)
    at onErrorNT (node:internal/child_process:478:16)
    at processTicksAndRejections (node:internal/process/task_queues:83:21) %c(at
 console.<anonymous> (/Applications/Visual Studio Code.app/Contents/Resources/ap
p/out/vs/workbench/api/node/extensionHostProcess.js:96:138784)) color: blue colo
r:  color: grey", source: vscode-file://vscode-app/Applications/Visual%20Studio%
20Code.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js (90
)
[85241:0315/115637.094292:INFO:CONSOLE(90)] "%c[Extension Host] %cError: An exte
nsion called process.exit() and this was prevented.
    at process.C.process.exit (/Applications/Visual Studio Code.app/Contents/Res
ources/app/out/vs/workbench/api/node/extensionHostProcess.js:122:14225)
    at gracefulExit (/Users/nacho/.vscode/extensions/rbbit.typescript-hero-3.0.0
/node_modules/winston/lib/winston/exception-handler.js:194:17)
    at /Users/nacho/.vscode/extensions/rbbit.typescript-hero-3.0.0/node_modules/
async/internal/once.js:12:16
    at iteratorCallback (/Users/nacho/.vscode/extensions/rbbit.typescript-hero-3
.0.0/node_modules/async/eachOf.js:60:13)
    at /Users/nacho/.vscode/extensions/rbbit.typescript-hero-3.0.0/node_modules/
async/internal/onlyOnce.js:12:16
    at onetime (/Users/nacho/.vscode/extensions/rbbit.typescript-hero-3.0.0/node
_modules/one-time/index.js:23:16)
    at File.<anonymous> (/Users/nacho/.vscode/extensions/rbbit.typescript-hero-3
.0.0/node_modules/winston/lib/winston/exception-handler.js:213:11)
    at Object.onceWrapper (node:events:646:26)
    at File.emit (node:events:538:35)
    at File.emit (node:domain:475:12)
    at File.logged (/Users/nacho/.vscode/extensions/rbbit.typescript-hero-3.0.0/
node_modules/winston/lib/winston/transports/file.js:130:12)
    at afterWrite (/Users/nacho/.vscode/extensions/rbbit.typescript-hero-3.0.0/n
ode_modules/readable-stream/lib/_stream_writable.js:491:3)
    at processTicksAndRejections (node:internal/process/task_queues:85:21) %c(at
 console.<anonymous> (/Applications/Visual Studio Code.app/Contents/Resources/ap
p/out/vs/workbench/api/node/extensionHostProcess.js:96:138784)) color: blue colo
r:  color: grey", source: vscode-file://vscode-app/Applications/Visual%20Studio%
20Code.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js (90
) 
[85241:0315/115637.094603:INFO:CONSOLE(90)] "%c[Extension Host] %cError: An exte
nsion called process.exit() and this was prevented.
    at process.C.process.exit (/Applications/Visual Studio Code.app/Contents/Res
ources/app/out/vs/workbench/api/node/extensionHostProcess.js:122:14225)
    at /Users/nacho/.vscode/extensions/redocly.openapi-vs-code-0.2.18/out/client
/src/extension.js:25:11576
    at Object.onfulfilled (/Users/nacho/.vscode/extensions/redocly.openapi-vs-co
de-0.2.18/out/client/src/extension.js:4:10829)
    at /Users/nacho/.vscode/extensions/redocly.openapi-vs-code-0.2.18/out/client
/src/extension.js:4:10128
    at Array.forEach (<anonymous>)
    at e._executeHandlers (/Users/nacho/.vscode/extensions/redocly.openapi-vs-co
de-0.2.18/out/client/src/extension.js:4:10059)
    at e._setResult (/Users/nacho/.vscode/extensions/redocly.openapi-vs-code-0.2
.18/out/client/src/extension.js:4:9849)
    at _resolve (/Users/nacho/.vscode/extensions/redocly.openapi-vs-code-0.2.18/
out/client/src/extension.js:4:9633)
    at Object.onfulfilled (/Users/nacho/.vscode/extensions/redocly.openapi-vs-co
de-0.2.18/out/client/src/extension.js:4:10827)
at /Users/nacho/.vscode/extensions/redocly.openapi-vs-code-0.2.18/out/client
/src/extension.js:4:10128
    at Array.forEach (<anonymous>)
    at e._executeHandlers (/Users/nacho/.vscode/extensions/redocly.openapi-vs-co
de-0.2.18/out/client/src/extension.js:4:10059)
    at e._setResult (/Users/nacho/.vscode/extensions/redocly.openapi-vs-code-0.2
.18/out/client/src/extension.js:4:9849)
    at _resolve (/Users/nacho/.vscode/extensions/redocly.openapi-vs-code-0.2.18/
out/client/src/extension.js:4:9633)
    at Object.onfulfilled (/Users/nacho/.vscode/extensions/redocly.openapi-vs-co
de-0.2.18/out/client/src/extension.js:4:10829)
    at /Users/nacho/.vscode/extensions/redocly.openapi-vs-code-0.2.18/out/client
/src/extension.js:4:10128
    at Array.forEach (<anonymous>)
    at e._executeHandlers (/Users/nacho/.vscode/extensions/redocly.openapi-vs-co
de-0.2.18/out/client/src/extension.js:4:10059)
    at e._attachHandler (/Users/nacho/.vscode/extensions/redocly.openapi-vs-code
-0.2.18/out/client/src/extension.js:4:9938)
    at /Users/nacho/.vscode/extensions/redocly.openapi-vs-code-0.2.18/out/client
/src/extension.js:4:10756
    at new e (/Users/nacho/.vscode/extensions/redocly.openapi-vs-code-0.2.18/out
/client/src/extension.js:4:10229)
    at e.then (/Users/nacho/.vscode/extensions/redocly.openapi-vs-code-0.2.18/ou
t/client/src/extension.js:4:10734)
    at e._setResult (/Users/nacho/.vscode/extensions/redocly.openapi-vs-code-0.2
.18/out/client/src/extension.js:4:9791)
    at _resolve (/Users/nacho/.vscode/extensions/redocly.openapi-vs-code-0.2.18/
out/client/src/extension.js:4:9633)
    at Object.onfulfilled (/Users/nacho/.vscode/extensions/redocly.openapi-vs-co
de-0.2.18/out/client/src/extension.js:4:10827)
    at /Users/nacho/.vscode/extensions/redocly.openapi-vs-code-0.2.18/out/client
/src/extension.js:4:10128
    at Array.forEach (<anonymous>)
    at e._executeHandlers (/Users/nacho/.vscode/extensions/redocly.openapi-vs-co
de-0.2.18/out/client/src/extension.js:4:10059)
    at e._setResult (/Users/nacho/.vscode/extensions/redocly.openapi-vs-code-0.2
.18/out/client/src/extension.js:4:9849)
    at _resolve (/Users/nacho/.vscode/extensions/redocly.openapi-vs-code-0.2.18/
out/client/src/extension.js:4:9633)
    at Timeout.<anonymous> (/Users/nacho/.vscode/extensions/redocly.openapi-vs-c
ode-0.2.18/out/client/src/extension.js:4:38849)
    at listOnTimeout (node:internal/timers:559:17)

And


[85241:0315/115637.378093:INFO:CONSOLE(615)] "%c  ERR color: #f33 [Extension Host] Error: spawn flow ENOENT
    at Process.ChildProcess._handle.onexit (node:internal/child_process:283:19)
    at onErrorNT (node:internal/child_process:478:16)
    at processTicksAndRejections (node:internal/process/task_queues:83:21)", source: vscode-file://vscode-app/Applications/Visual%20Studio%20Code.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js (615)
[85241:0315/115637.378124:INFO:CONSOLE(90)] "%c[Extension Host] %cError: spawn flow ENOENT
    at Process.ChildProcess._handle.onexit (node:internal/child_process:283:19)
    at onErrorNT (node:internal/child_process:478:16)
    at processTicksAndRejections (node:internal/process/task_queues:83:21) %c(at console.<anonymous> (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:96:138784)) color: blue color:  color: grey", source: vscode-file://vscode-app/Applications/Visual%20Studio%20Code.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js (90)
[85241:0315/115637.387262:INFO:CONSOLE(2605)] "Extension host (LocalProcess) terminated unexpectedly. Code: 7, Signal: unknown", source: vscode-file://vscode-app/Applications/Visual%20Studio%20Code.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js (2605)
[85241:0315/115637.400433:INFO:CONSOLE(615)] "%c  ERR color: #f33 Extension host (LocalProcess) terminated unexpectedly. No extensions were activated.", source: vscode-file://vscode-app/Applications/Visual%20Studio%20Code.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js (615)
[85241:0315/115637.400803:INFO:CONSOLE(747)] "Extension host terminated unexpectedly 3 times within the last 5 minutes.", source: vscode-file://vscode-app/Applications/Visual%20Studio%20Code.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js (747)```
bpasero commented 1 year ago

👋 , since we just merged a lot of issues into this one as duplicate: has anyone been able to figure out a pattern that reproduces this issue reliably? We in our team all use Copilot on the same version and so far have not yet hit this issue.

Is it just using Copilot over some time in the editor when it randomly happens? Are there any settings configured around Copilot or editor suggest that might have an impact?

Gerrnperl commented 1 year ago

@bpasero For me the extension host always terminates when I do a git commit via vscode. When I disable Github Copilot (or just for 'git-commit'), the crash doesn't happen anymore.

And there will be a small probability of termination at other times

Peek 2023-03-15 20-43 When Copilot tries to autocomplete when I enter a commit message, the extension host terminates

VS Code Version: 1.76.1 (Commit: 5e805b79fcb6ba4c2d23712967df89a089da575b , Date: 2023-03-08T16:31:31.010Z)

OS: x86_64 Linux 5.19.0-35-generic, Ubuntu 22.10 kinetic

yegor-ch commented 1 year ago

The same issue. It's related to a new version of the Copilot. Try to downgrade the Copilot version to 1.76.9071 image

isidorn commented 1 year ago

Can anyone reproduce this issue with the previous Copilot version 1.76.9071? You can change extension version by opening the Extensions viewlet, right click on Copilot > Install Another Version.

Also sharing exact steps like @Gerrnperl is extremely helpful for us!

bpasero commented 1 year ago

@Gerrnperl thats a very nice small repro, which unfortunately I cannot reproduce. Curious, when you observe the memory used by "utility process" when the "Process Explorer" is opened (from "Help" menu), does that memory suddenly go to a very large value and then restart the process?

Screenshot 2023-03-15 at 14 54 31
Gerrnperl commented 1 year ago

Can anyone reproduce this issue with the previous Copilot version 1.76.9071? You can change extension version by opening the Extensions viewlet, right click on Copilot > Install Another Version.

@isidorn For me, the previous version of Copilot didn't cause this issue.

TeddyCr commented 1 year ago

Same for me 1.76.9071 works as expected. As soon as I upgrade to the latest version the extension host eventually crashes within a few minutes.

Gerrnperl commented 1 year ago

@Gerrnperl thats a very nice small repro, which unfortunately I cannot reproduce. Curious, when you observe the memory used by "utility process" when the "Process Explorer" is opened (from "Help" menu), does that memory suddenly go to a very large value and then restart the process?

@bpasero

Peek 2023-03-15 22-50

"utility process" took up about 400 MB at the time of the crash I'm not sure if this is "unusually large", but with Copilot disabled, the utility process memory usage fluctuates between 100 MB and 350 MB (and sometimes rarely exceed 400 MB)

bpasero commented 1 year ago

@Gerrnperl thanks, could you quit VS Code, run code --verbose, reproduce the issue and then send the logs as Zip from that session (e-mail is fine, its viewable on https://github.com/bpasero). You can find the logs folder from this command:

image

And it would be the most recent folder entry (every session gets their own folder).

Baz00k commented 1 year ago

@bpasero I have reproduced the bug with --verbose flag and sent you zip by email

abgoswam commented 1 year ago

for folks who saw this issue on Copilot version 1.77.* (or above), could you re-enable the latest version and check if the issue still persists ?

isidorn commented 1 year ago

+1 for @abgoswam comment from above. We have identified a potential experiment that was causing the problem, and we have turned it off just now. We now believe the issue is fixed. Thus - please try again and let us know if you still see the problem. Thanks all!

a-r-j commented 1 year ago

Thanks for the fix! So far so good for me.

isidorn commented 1 year ago

@a-r-j thanks for verifying.

I am going ahead and closing this issue. If anybody is still seeing Extension Host crashes with Copilot do let us know and we will reopen this issue. Thank you all for your help!

myagizmaktav commented 1 year ago

my problem was fixed. above 1.77.97

verveguy commented 1 year ago

@isidorn I'm still seeing it on a fresh install of latest Copilot extension. 1.78.9758

isidorn commented 1 year ago

@verveguy do F1 > extension bisect. Most likely another extension is causing it, or it is another Copilot issue. In which case - fell free to open a new issue. Thanks

ozjuly19 commented 1 year ago

I also had this issue mine was a complete breakdown of my WSL2 install due to windows refusing to mount the virtual disk anymore. I have no solution at this time but this is possibly caused by WSL2.