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

Offen
#1,867 5 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Vorherrschende Sprache
TypeScript
Sterne
2.3k
Forks
546
Ø Merge
20 Std. 1 Min.
Gemergte PRs (30 T.)
11

Beschreibung

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.

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Keine Projektquelldatei oder kein Test ist angegeben. Beginne damit, das Startverhalten unter macOS mit den aufgeführten Java-, Maven- und Python-Erweiterungen zu reproduzieren. Untersuche anschließend den Extension Host-Fehler mit dem Verweis auf vscjava.vscode-maven/dist/extension.js und den gemeldeten dsc-Prozess. Erledigt ist die Aufgabe, wenn die Erweiterung oder der Einstiegspunkt identifiziert wurde, der die überzähligen Prozesse erstellt, und eine reproduzierbare Behebung oder Verifizierung dokumentiert ist.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
java, python, typescript
Bereich
devtools, performance
Issue-Typ
Bug
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
18/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.