Vscode: [Meta] Crash with webview after updated to 1.43.0

Created on 11 Mar 2020  Â·  19Comments  Â·  Source: microsoft/vscode

Issue Type: Bug

Actual:

  • Crash after updated to 1.43.0 successfully (when VSCode tries to restart).
  • Crash when click on Restart Required of extension randomly.

Instead of restart editor, it just stops.

Reproduce steps:
It's random, cannot reproduce.

VS Code version: Code 1.43.0 (78a4c91400152c0f27ba4d363eb56d2835f9903a, 2020-03-09T19:34:44.548Z)
OS version: Darwin x64 19.3.0


System Info

|Item|Value|
|---|---|
|CPUs|Intel(R) Core(TM) i5-7360U CPU @ 2.30GHz (4 x 2300)|
|GPU Status|2d_canvas: enabled
flash_3d: enabled
flash_stage3d: enabled
flash_stage3d_baseline: enabled
gpu_compositing: enabled
metal: disabled_off
multiple_raster_threads: enabled_on
oop_rasterization: disabled_off
protected_video_decode: unavailable_off
rasterization: enabled
skia_renderer: disabled_off_ok
video_decode: enabled
viz_display_compositor: enabled_on
viz_hit_test_surface_layer: disabled_off_ok
webgl: enabled
webgl2: enabled|
|Load (avg)|3, 3, 5|
|Memory (System)|16.00GB (1.14GB free)|
|Process Argv||
|Screen Reader|no|
|VM|0%|

Extensions (28)

Extension|Author (truncated)|Version
---|---|---
vscode-vlang|0x9|0.1.1
better-comments|aar|2.0.5
increment-selection|alb|0.2.0
cucumberautocomplete|ale|2.14.1
better-toml|bun|0.3.2
path-intellisense|chr|1.4.2
vscode-markdownlint|Dav|0.34.0
gitlens|eam|10.2.1
EditorConfig|Edi|0.14.4
vscode-great-icons|emm|2.1.47
code-runner|for|0.9.17
glitch|gli|0.1.6
todo-tree|Gru|0.0.169
rest-client|hum|0.23.2
rainbow-csv|mec|1.6.0
python|ms-|2020.2.64397
remote-wsl|ms-|0.42.3
cpptools|ms-|0.26.3
Go|ms-|0.13.1
vscode-xml|red|0.10.1
vscode-yaml|red|0.7.2
code-settings-sync|Sha|3.4.3
code-spell-checker|str|1.8.0
lua|sum|0.15.6
vscodeintellicode|Vis|1.2.6
codetour|vsl|0.0.4
gistfs|vsl|0.0.62
markdown-pdf|yza|1.4.2

(1 theme extensions excluded)


candidate confirmed electron-7-update freeze-slow-crash-leak important linux mac verified webview windows

Most helpful comment

Hi all, just to give an update. We have identified the cause of crash and are actively working on a fix. It should be available in Insiders first (will update again once it is out for testing).

Thanks everyone for the patience and also for helpful repro cases.

All 19 comments

(Experimental duplicate detection)
Thanks for submitting this issue. Please also check if it is already covered by an existing one, like:

I too am experiencing random crashes while using VSCode 1.43. Since upgrading, VSCode seems to crash at random. I have been unable to replicate the exact steps but I do find it crashes more often when I navigate the application using the keyboard (instead of using the mouse). This may be a false lead but I believe it is worth noting.

I disabled all installed extensions and used VSCode as normally as I could but the random crashing persisted.

I have attached my raw crash log from OSX

vscode_crash_raw.txt

Please let me know if you need any other information.

Also experienced repeated crashes on my Mac right after the upgrade. At some point, after a crash, VSCode failed to start altogether — so I downgraded to 1.42.1.

Same here, random non-reproducable crashes while using or while in background. Only started after the 1.43 update

92356

Well experiencing the same after upgrading to version 1.43.0 on my mac.

Can everyone try adding this setting and see if the crash still happens "webview.experimental.useExternalEndpoint": true

Also can you provide the info based on https://github.com/microsoft/vscode/issues/92192#issuecomment-598579176

I'm having similar issues, but in my case it seems to crash after switching between windows roughly every 15 mins. This only start happening today. I have not added any new extensions in weeks, and I did attempt disabling all of them, but VsCode still crashed

Here's 15 logs related to this, not all are the same.
crash-reports.zip

Here's the most common one.
Electron_2020-03-13-135952_ADMINs-MacBook-Pro.txt

Can everyone try adding this setting and see if the crash still happens "webview.experimental.useExternalEndpoint": true

Also can you provide the info based on #92192 (comment)

I've been trying this for about an hour and It looks promising. No crashes yet.

Thanks @lopezhansel for the crash reports, they indicate the same trace as https://github.com/microsoft/vscode/issues/92192#issuecomment-598589130 and based on your last comment it confirms crash originates from electron webview.

To further narrow down a reliable repro, would be good to know what kind tabs are opened when you see the crash, for ex: is there any kind of markdown editor ?

/cc @mjbvz what other actions would trigger an electron webview creation ?

Ooh; I use the VsCoq plugin, which I guess uses a webview for the "proof state" (https://github.com/coq-community/vscoq/blob/f587c15aaa3d3adef3c2e87f429328b2d1906942/client/src/HtmlCoqView.ts#L119).

@deepak1556 We should only create electron webviews in two cases:

  • The webview itself is visible
  • The webview was previously visible but is now hidden AND the webview set the retainContextWhenHidden

Webviews are used in VS code for the following features:

  • Release notes
  • Extension marketplace pages
  • The webview api

I was definitely editing JavaScript, and might have been editing markdown at some point. It was a node.js application and I did edit and previewed a markdown file at one point.

Can everyone try adding this setting and see if the crash still happens "webview.experimental.useExternalEndpoint": true

Also can you provide the info based on #92192 (comment)

My crashReporter.guid has the following value:
"0a22c60c-a147-4c0e-a8ba-0a962d842437"

Can everyone try adding this setting and see if the crash still happens "webview.experimental.useExternalEndpoint": true

BTW, added this to my settings and got no crashes for the past 2 days.

I've also been seeing crashes. Became every few minutes today and got to the point where I couldn't even hit enter in a file to add a new line. I have crash reports under User Reports in the Mac console, but I don't see crashReporter.guid when I run Log Storage Database Contents.

I tried this suggestion from the other thread and seems to have helped. At least I can add lines to my file now.

https://github.com/microsoft/vscode/issues/92192#issuecomment-598570002

Can people that hit this try running "code --disable-gpu" to see if it makes any difference? Also it would be great if people can indicate if this reproduces with some steps constantly.

If it crashes again, I'll try "webview.experimental.useExternalEndpoint": true and see if it helps.

EDIT: I added "webview.experimental.useExternalEndpoint": true to settings.json but I'm still getting crashes.
CrashReport.txt

Version: 1.43.0
Commit: 78a4c91400152c0f27ba4d363eb56d2835f9903a
Date: 2020-03-09T19:34:44.548Z
Electron: 7.1.11
Chrome: 78.0.3904.130
Node.js: 12.8.1
V8: 7.8.279.23-electron.0
OS: Darwin x64 18.6.0

I can confirm that setting webview.experimental.useExternalEndpoint to true helped in my case, although now image (png's) previews in VsCode do not work. Im getting An error occurred while loading the image.

Hi all, just to give an update. We have identified the cause of crash and are actively working on a fix. It should be available in Insiders first (will update again once it is out for testing).

Thanks everyone for the patience and also for helpful repro cases.

Can everyone try the latest insiders https://code.visualstudio.com/insiders/ and see if it still crashes ?

If the setting "webview.experimental.useExternalEndpoint": true is enabled, do remove it and verify. Thanks!

To verify this crash due to race:

  • Make sure to create and destroy webview panels
  • Perform some window operations like resize, scroll etc

Demo -> https://streamable.com/zjavi

Was this page helpful?
0 / 5 - 0 ratings

Related issues

omidgolparvar picture omidgolparvar  Â·  3Comments

VitorLuizC picture VitorLuizC  Â·  3Comments

DovydasNavickas picture DovydasNavickas  Â·  3Comments

v-pavanp picture v-pavanp  Â·  3Comments

villiv picture villiv  Â·  3Comments