microsoft/sarif-vscode-extension

100% cpu usage

Closed this issue · 2 comments

Type: Bug

Open a large workspace with many node_modules directories; typing produces 100% cpu usage due to multiple copies of ripgrep being started.

Extension version: 3.4.2
VS Code version: Code 1.74.3 (97dec172d3256f8ca4bfb2143f3f76b503ca0534, 2023-01-09T17:07:18.579Z)
OS version: Darwin x64 23.2.0
Modes:
Sandboxed: No

System Info
Item Value
CPUs Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz (16 x 2300)
GPU Status 2d_canvas: enabled
canvas_oop_rasterization: disabled_off
direct_rendering_display_compositor: disabled_off_ok
gpu_compositing: enabled
metal: disabled_off
multiple_raster_threads: enabled_on
opengl: enabled_on
rasterization: enabled
raw_draw: disabled_off_ok
skia_renderer: enabled_on
video_decode: enabled
video_encode: enabled
vulkan: disabled_off
webgl: enabled
webgl2: enabled
webgpu: disabled_off
Load (avg) 39, 44, 30
Memory (System) 32.00GB (0.36GB free)
Process Argv --crash-reporter-id adeab385-da39-4c80-8779-4b6d6d1a8e71
Screen Reader no
VM 0%
A/B Experiments
vsliv368:30146709
vspor879:30202332
vspor708:30202333
vspor363:30204092
vscod805:30301674
binariesv615:30325510
vsaa593:30376534
py29gd2263:30899288
c4g48928:30535728
azure-dev_surveyone:30548225
2i9eh265:30646982
962ge761:30951796
pythongtdpath:30769146
pythonidxpt:30866567
pythonnoceb:30805159
asynctok:30898717
pythontestfixt:30902429
pythonregdiag2:30936856
pyreplss1:30897532
pythonmypyd1:30879173
pythoncet0:30885854
pythontbext0:30879054
dsvsc016:30899300
dsvsc017:30899301
dsvsc018:30899302
dsvsc019b:30953937
3ef8e399:30949928
e3gdj431:30958358
ccp1r6:30958156

I can reproduce this with the latest vscode version and extension.

When opening a .tsx file, the extension will launch a dozen of rg processes which each use 100% cpu on a core.

I ran a bisect which identified this extension (which I recently installed), and disabling it fixes the issue.

I am still facing the same issue where when with only SARIF enabled, when editing .vue files, loads of rg sub-process will be spawned. Sometimes caused my macOS into a OS freezing state.

image

Just curious here, doesn't #556 only fix the path search issue for Windows? The APFS file system that macOS uses is a case-insensitive file system, should we handle such scenario for macOS too?

System info

CPUs Apple M1 Pro (10 x 2400)
GPU Status 2d_canvas: enabled canvas_oop_rasterization: enabled_on 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_graphite: disabled_off video_decode: enabled video_encode: enabled webgl: enabled webgl2: enabled webgpu: enabled
Load (avg) 60, 132, 95
Memory (System) 16.00GB (0.06GB free)
Process Argv --crash-reporter-id 5779273d-62c9-4b09-8ef8-47a48bacb713
Screen Reader no
VM 0%

Workspace metadata

|  Window (index.vue — frontend)
|    Folder (frontend): 1052 files
|      File types: map(233) js(230) mjs(172) vue(138) ts(64) json(23) png(22)
|                  css(12) md(11) svg(9)
|      Conf files: tsconfig.json(3) github-actions(1) settings.json(1)
|                  package.json(1)