redhat-developer / redhat-developer/vscode-java

VSCode spawns too many dsc processes randomly (usually on new instance startup) - causes High CPU/Memory and sometimes system crash

オープン
#1,867 コメント 5 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

主要言語
TypeScript
スター
2.3k
フォーク
546
平均マージ
20時間 1分
マージ済み PR(30日)
11

説明

Port from https://github.com/microsoft/vscode/issues/120649

Issue Type: Performance Issue

VSCode spawns too many dsc processes randomly (usually on new instance startup)
My Macbook Pro goes to 100% fan speed and +95 degrees CPU until it crashes or runs out of system memory (not always)

If I manage to close VSCode quickly it goes away after a while

I don't know what this dsc process is [parent process: Code Helper (Renderer)]
There are a lot of Python processes as well.

Screenshot 2021-04-06 at 17 32 15

I suspect it is some extension, tried with disabling all extensions and reloading the window, and seems to help on startup... after reenabling the extensions the fans quickly go to 100% again but don't know how to test which extension it is

Suspect on Java Extension Pack and Language Support for Java(TM) by Red Hat which are the latest ones I installed

I usually have 3-4 instances of VSCode open, the issue happens usually by the end of the workday after the instances were open a while and I open/close new ones.

VS Code version: Code 1.55.0 (c185983a683d14c396952dd432459097bc7f757f, 2021-03-30T16:01:05.981Z)
OS version: Darwin x64 20.3.0

System Info
Item Value
CPUs Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz (12 x 2200)
GPU Status 2d_canvas: enabled
gpu_compositing: enabled
metal: disabled_off
multiple_raster_threads: enabled_on
oop_rasterization: enabled
opengl: enabled_on
protected_video_decode: unavailable_off
rasterization: enabled
skia_renderer: disabled_off_ok
video_decode: enabled
webgl: enabled
webgl2: enabled
Load (avg) 6, 6, 32
Memory (System) 16.00GB (4.24GB free)
Process Argv --crash-reporter-id 78df903b-f939-4bb4-a641-bdc335175a99
Screen Reader no
VM 0%
Process Info
CPU %	Mem MB	   PID	Process
   27	   131	 78309	code main
    6	    82	 78312	   gpu-process
    0	    33	 78314	   utility
   22	   164	 78841	   shared-process
    0	    33	 78843	     ptyHost
    0	    16	 78951	       /bin/zsh -l
    0	     0	 80614	     /bin/ps -ax -o pid=,ppid=,pcpu=,pmem=,command=
   18	   279	 80364	   window (index.ts — propeller-api-services)
    1	   377	 80368	     extensionHost
    0	   115	 80379	       electron_node tsserver.js 
    0	   213	 80380	       electron_node tsserver.js 
    0	    82	 80425	         electron_node typingsInstaller.js typesMap.js 
    0	    66	 80385	       electron_node server.js 
    0	   213	 80413	       electron_node server.js 
    0	    82	 80419	       electron_node server.js 
    0	    49	 80440	       electron_node server.js 
    0	   246	 80534	       electron_node eslintServer.js 
    0	    33	 80538	       electron_node ssmServer.js 
    0	    33	 80591	       electron_node aslServer.js 
    0	    49	 80593	       /Applications/Visual Studio Code.app/Contents/Frameworks/Code Helper (Renderer).app/Contents/MacOS/Code Helper (Renderer) /Applications/Visual Studio Code.app/Contents/Resources/app/extensions/json-language-features/server/dist/node/jsonServerMain --node-ipc --clientProcessId=80368
    0	    33	 80598	       electron_node server.js 
    0	    33	 80369	     watcherService
    0	    33	 80370	     searchService
   28	    49	 80612	   window (Issue Reporter)
Workspace Info
|  Window (index.ts — propeller-api-services)
|    Folder (propeller-api-services): 16 files
|      File types: json(4) yaml(2) ts(2) env(1) gitignore(1) nvmrc(1)
|                  prettierrc(1) md(1)
|      Conf files: package.json(1) tsconfig.json(1);
Extensions (67)
Extension Author (truncated) Version
better-comments aar 2.1.0
vscode-css-formatter aes 1.0.1
aws-toolkit-vscode ama 1.22.0
jest-snippets and 1.8.0
vscode-apollo apo 1.18.2
path-intellisense chr 2.3.0
gitignore cod 0.6.0
bracket-pair-colorizer Coe 1.0.61
vscode-markdownlint Dav 0.40.1
vscode-eslint dba 2.1.19
vscode-dash dee 2.4.0
githistory don 0.6.16
gitlens eam 11.3.0
EditorConfig Edi 0.16.4
LogFileHighlighter emi 2.11.0
vscode-great-icons emm 2.1.73
prettier-vscode esb 6.3.2
vscode-todo-plus fab 4.18.3
vscode-jest-runner fir 0.4.31
vscode-pull-request-github Git 0.25.0
go gol 0.23.3
cloudcode goo 1.10.0
vscode-graphql Gra 0.3.15
terraform has 2.9.1
jsonnet hep 0.1.0
output-colorizer IBM 0.1.2
coldfusion ili 1.0.1
cypher-query-language jak 1.0.2
golang-tdd joa 0.0.9
rainbow-csv mec 1.8.1
dotenv mik 1.0.1
file-downloader min 1.0.10
mindaro min 1.0.120210401
vscode-docker ms- 1.11.0
kind-vscode ms- 0.0.3
vscode-aks-tools ms- 0.0.8
vscode-kubernetes-tools ms- 1.3.0
python ms- 2021.3.680753044
jupyter ms- 2021.5.702919634
remote-containers ms- 0.166.0
azure-account ms- 0.9.8
debugger-for-chrome msj 4.12.12
color-highlight nau 2.3.0
vscode-jest Ort 3.2.0
material-icon-theme PKi 4.6.0
prisma Pri 2.20.1
fabric8-analytics red 0.3.2
java red 0.76.0
vscode-commons red 0.0.4
vscode-yaml red 0.17.0
LiveServer rit 5.6.1
ksql rmo 0.1.4
rust rus 0.7.8
code-settings-sync Sha 3.4.3
mdx sil 0.1.0
code-spell-checker str 1.10.2
vsfire tob 1.4.1
vscodeintellicode Vis 1.2.12
vscode-java-debug vsc 0.32.1
vscode-java-dependency vsc 0.18.2
vscode-java-pack vsc 0.13.0
vscode-java-test vsc 0.28.1
vscode-maven vsc 0.28.0
vscode-todo-highlight way 1.0.4
vscode-import-cost wix 2.15.0
markdown-all-in-one yzh 3.4.0
vscode-proto3 zxh 0.5.3
A/B Experiments
vsliv368cf:30146710
vsreu685:30147344
python383:30185418
pythonvspyt678:30270856
vspor879:30202332
vspor708:30202333
vspor363:30204092
vstry914:30276682
pythonvsdeb440:30248342
pythonvsded773:30248341
pythonvspyt875:30259475
pythonvspyt639:30281910
pythontb:30283811
openwsldoc:30282072
vspre833:30267464
pythonptprofiler:30281270
vshan820:30276952
pythondataviewer:30285071

Environment
  • Operating System: macOS BigSur 11.2.3 (20D91)
  • JDK version: openjdk 11.0.10 2021-01-19
  • Visual Studio Code version: 1.55.0
  • Java extension version: 0.76.0

Please attach logs

Not a lot of error messages

[Extension Host] Error: Background process terminated with code 1.	at ChildProcess.<anonymous> (/Users/bojanche/.vscode/extensions/vscjava.vscode-maven-0.28.0/dist/extension.js:16:27203)	at ChildProcess.emit (events.js:315:20)	at ChildProcess.EventEmitter.emit (domain.js:483:12)	at Process.ChildProcess._handle.onexit (internal/child_process.js:275:12)
v @ console.ts:137
$logExtensionHostMessage @ mainThreadConsole.ts:35
_doInvokeHandler @ rpcProtocol.ts:417
_invokeHandler @ rpcProtocol.ts:402
_receiveRequest @ rpcProtocol.ts:318
_receiveOneMessage @ rpcProtocol.ts:245
(anonymous) @ rpcProtocol.ts:110
fire @ event.ts:622
fire @ ipc.net.ts:468
_receiveMessage @ ipc.net.ts:821
(anonymous) @ ipc.net.ts:660
fire @ event.ts:622
acceptChunk @ ipc.net.ts:241
(anonymous) @ ipc.net.ts:202
k @ ipc.net.ts:50
emit @ events.js:315
addChunk @ _stream_readable.js:295
readableAddChunk @ _stream_readable.js:271
Readable.push @ _stream_readable.js:212
onStreamRead @ internal/stream_base_commons.js:186

Few warnings

Overwriting grammar scope name to file mapping for scope source.java.
Old grammar file: file:///Applications/Visual%20Studio%20Code.app/Contents/Resources/app/extensions/java/syntaxes/java.tmLanguage.json.
New grammar file: file:///Users/bojanche/.vscode/extensions/redhat.java-0.76.0/syntaxes/java.tmLanguage.json
register @ TMScopeRegistry.ts:45
R @ TMGrammarFactory.ts:73
_getOrCreateGrammarFactory @ abstractTextMateService.ts:246
async function (async)
_getOrCreateGrammarFactory @ abstractTextMateService.ts:235
(anonymous) @ abstractTextMateService.ts:271
_registerDefinitionIfAvailable @ abstractTextMateService.ts:289
(anonymous) @ abstractTextMateService.ts:181
fire @ event.ts:622
_getOrCreateMode @ modeServiceImpl.ts:167
_createModeAndGetLanguageIdentifier @ modeServiceImpl.ts:143
(anonymous) @ modeServiceImpl.ts:136
y @ modeServiceImpl.ts:28
createByFilepathOrFirstLine @ modeServiceImpl.ts:134
getOrCreateMode @ textEditorModel.ts:134
createTextEditorModel @ textEditorModel.ts:90
doCreateTextModel @ textFileEditorModel.ts:510
loadFromContent @ textFileEditorModel.ts:490
loadFromFile @ textFileEditorModel.ts:423
async function (async)
loadFromFile @ textFileEditorModel.ts:410
doLoad @ textFileEditorModel.ts:290
async function (async)
doLoad @ textFileEditorModel.ts:283
load @ textFileEditorModel.ts:270
resolve @ textFileEditorModelManager.ts:306
doCreateReferencedObject @ textModelResolverService.ts:63
createReferencedObject @ textModelResolverService.ts:37
acquire @ lifecycle.ts:265
createModelReference @ textModelResolverService.ts:197
_handleAsResourceInput @ mainThreadDocuments.ts:268
$tryOpenDocument @ mainThreadDocuments.ts:244
_doInvokeHandler @ rpcProtocol.ts:417
_invokeHandler @ rpcProtocol.ts:402
_receiveRequest @ rpcProtocol.ts:318
_receiveOneMessage @ rpcProtocol.ts:245
(anonymous) @ rpcProtocol.ts:110
fire @ event.ts:622
fire @ ipc.net.ts:468
_receiveMessage @ ipc.net.ts:821
(anonymous) @ ipc.net.ts:660
fire @ event.ts:622
acceptChunk @ ipc.net.ts:241
(anonymous) @ ipc.net.ts:202
k @ ipc.net.ts:50
emit @ events.js:315
addChunk @ _stream_readable.js:295
readableAddChunk @ _stream_readable.js:271
Readable.push @ _stream_readable.js:212
onStreamRead @ internal/stream_base_commons.js:186

Please let me know if more info or logs is needed.

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

プロジェクトのソースファイルもテストも指定されていません。まず、記載されている Java、Maven、Python の拡張機能を使用して macOS で起動時の動作を再現し、次に vscjava.vscode-maven/dist/extension.js を参照している Extension Host エラーと、報告された dsc プロセスを調査します。余分なプロセスを作成している拡張機能またはエントリポイントを特定し、再現可能な修正または検証を文書化できれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
java, python, typescript
領域
devtools, performance
issue の種類
バグ
難易度
5/5
見積もり時間
1週間以上
活発さ
停滞
明瞭さ
説明が足りない
初心者へのやさしさ
18/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。