todo-tree
todo-tree copied to clipboard
VS Code constantly reports "UNRESPONSIVE extension host"
Issue Type: Bug
This events generated constantly, VS Code starts profiling and collect 70 MB files of profiling every ten seconds, consuming space in /tmp.
This is content of Output page of the VS Code:
[2022-03-23 13:39:59.740] [renderer1] [info] UNRESPONSIVE extension host: starting to profile NOW
[2022-03-23 13:40:01.331] [renderer1] [info] UNRESPONSIVE extension host: received responsive event and cancelling profiling session
[2022-03-23 13:40:01.415] [renderer1] [warning] UNRESPONSIVE extension host: 'johnstoncode.svn-scm' took 28% of 1633.209ms, saved PROFILE here: 'file:///tmp/exthost-7a77c4.cpuprofile' [{"id":"belfz.search-crates-io","total":263190,"percentage":16},{"id":"Fr43nk.seito-openfile","total":337598,"percentage":21},{"id":"gc","total":11095,"percentage":1},{"id":"johnstoncode.svn-scm","total":450557,"percentage":28},{"id":"k5hh.pdf","total":305,"percentage":0},{"id":"mtxr.sqltools","total":31555,"percentage":2},{"id":"program","total":6096,"percentage":0},{"id":"redhat.vscode-yaml","total":120,"percentage":0},{"id":"self","total":408273,"percentage":25},{"id":"serayuzgur.crates","total":29914,"percentage":2},{"id":"vscjava.vscode-java-pack","total":47404,"percentage":3},{"id":"vscode.npm","total":45376,"percentage":3},{"id":"wayou.vscode-todo-highlight","total":1605,"percentage":0}]
[2022-03-23 13:40:01.522] [renderer1] [error] [Extension Host] (node:237719) [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 --trace-deprecation ...` to show where the warning was created)
[2022-03-23 13:51:18.667] [renderer1] [info] UNRESPONSIVE extension host: starting to profile NOW
[2022-03-23 13:51:20.065] [renderer1] [info] UNRESPONSIVE extension host: received responsive event and cancelling profiling session
[2022-03-23 13:51:21.519] [renderer1] [warning] UNRESPONSIVE extension host: 'Gruntfuggly.todo-tree' took 84% of 1509.513ms, saved PROFILE here: 'file:///tmp/exthost-17b5d3.cpuprofile' [{"id":"2gua.rainbow-brackets","total":7059,"percentage":0},{"id":"aaron-bond.better-comments","total":329,"percentage":0},{"id":"alefragnani.numbered-bookmarks","total":308,"percentage":0},{"id":"Fr43nk.seito-openfile","total":153,"percentage":0},{"id":"gc","total":105104,"percentage":7},{"id":"Gruntfuggly.todo-tree","total":1268078,"percentage":84},{"id":"johnstoncode.svn-scm","total":306,"percentage":0},{"id":"mechatroner.rainbow-csv","total":157,"percentage":0},{"id":"mtxr.sqltools","total":304,"percentage":0},{"id":"program","total":479,"percentage":0},{"id":"rust-lang.rust","total":103602,"percentage":7},{"id":"self","total":15434,"percentage":1},{"id":"streetsidesoftware.code-spell-checker","total":6859,"percentage":0},{"id":"vscode.git","total":317,"percentage":0},{"id":"vscode.merge-conflict","total":479,"percentage":0},{"id":"wayou.vscode-todo-highlight","total":312,"percentage":0}]
[2022-03-23 13:51:23.592] [renderer1] [info] UNRESPONSIVE extension host: starting to profile NOW
[2022-03-23 13:51:24.751] [renderer1] [info] UNRESPONSIVE extension host: received responsive event and cancelling profiling session
[2022-03-23 13:51:26.022] [renderer1] [warning] UNRESPONSIVE extension host: 'Gruntfuggly.todo-tree' took 91% of 1237.482ms, saved PROFILE here: 'file:///tmp/exthost-ed50fb.cpuprofile' [{"id":"gc","total":61416,"percentage":5},{"id":"Gruntfuggly.todo-tree","total":1128310,"percentage":91},{"id":"program","total":1083,"percentage":0},{"id":"rust-lang.rust","total":10041,"percentage":1},{"id":"self","total":18997,"percentage":2},{"id":"streetsidesoftware.code-spell-checker","total":1321,"percentage":0},{"id":"vscode.git","total":16063,"percentage":1}]
[2022-03-23 13:54:11.604] [renderer1] [info] UNRESPONSIVE extension host: starting to profile NOW
[2022-03-23 13:54:12.317] [renderer1] [info] UNRESPONSIVE extension host: received responsive event and cancelling profiling session
[2022-03-23 13:54:13.195] [renderer1] [warning] UNRESPONSIVE extension host: 'Gruntfuggly.todo-tree' took 92% of 789.831ms, saved PROFILE here: 'file:///tmp/exthost-3ff007.cpuprofile' [{"id":"2gua.rainbow-brackets","total":4449,"percentage":1},{"id":"aaron-bond.better-comments","total":157,"percentage":0},{"id":"alefragnani.numbered-bookmarks","total":157,"percentage":0},{"id":"gc","total":41980,"percentage":5},{"id":"Gruntfuggly.todo-tree","total":725816,"percentage":92},{"id":"johnstoncode.svn-scm","total":158,"percentage":0},{"id":"mtxr.sqltools","total":172,"percentage":0},{"id":"program","total":829,"percentage":0},{"id":"rust-lang.rust","total":1316,"percentage":0},{"id":"self","total":11323,"percentage":1},{"id":"streetsidesoftware.code-spell-checker","total":2740,"percentage":0},{"id":"vscode.merge-conflict","total":459,"percentage":0}]
[2022-03-23 13:54:20.322] [renderer1] [info] UNRESPONSIVE extension host: starting to profile NOW
[2022-03-23 13:54:21.101] [renderer1] [info] UNRESPONSIVE extension host: received responsive event and cancelling profiling session
[2022-03-23 13:54:22.026] [renderer1] [warning] UNRESPONSIVE extension host: 'Gruntfuggly.todo-tree' took 95% of 858.651ms, saved PROFILE here: 'file:///tmp/exthost-8145e6.cpuprofile' [{"id":"aaron-bond.better-comments","total":168,"percentage":0},{"id":"gc","total":41531,"percentage":5},{"id":"Gruntfuggly.todo-tree","total":815869,"percentage":95},{"id":"rust-lang.rust","total":341,"percentage":0},{"id":"self","total":320,"percentage":0},{"id":"streetsidesoftware.code-spell-checker","total":170,"percentage":0}]
[2022-03-23 13:54:24.398] [renderer1] [info] UNRESPONSIVE extension host: starting to profile NOW
[2022-03-23 13:54:25.384] [renderer1] [info] UNRESPONSIVE extension host: received responsive event and cancelling profiling session
[2022-03-23 13:54:26.519] [renderer1] [warning] UNRESPONSIVE extension host: 'Gruntfuggly.todo-tree' took 94% of 1080.776ms, saved PROFILE here: 'file:///tmp/exthost-57e993.cpuprofile' [{"id":"gc","total":55786,"percentage":5},{"id":"Gruntfuggly.todo-tree","total":1020154,"percentage":94},{"id":"program","total":452,"percentage":0},{"id":"rust-lang.rust","total":1848,"percentage":0},{"id":"self","total":2078,"percentage":0},{"id":"streetsidesoftware.code-spell-checker","total":166,"percentage":0},{"id":"vscode.merge-conflict","total":175,"percentage":0}]
[2022-03-23 16:52:22.348] [renderer1] [info] UNRESPONSIVE extension host: starting to profile NOW
[2022-03-23 16:52:25.765] [renderer1] [info] UNRESPONSIVE extension host: received responsive event and cancelling profiling session
[2022-03-23 16:52:29.500] [renderer1] [warning] UNRESPONSIVE extension host: 'Gruntfuggly.todo-tree' took 94% of 3508.822ms, saved PROFILE here: 'file:///tmp/exthost-f40ca0.cpuprofile' [{"id":"2gua.rainbow-brackets","total":170,"percentage":0},{"id":"aaron-bond.better-comments","total":154,"percentage":0},{"id":"alefragnani.numbered-bookmarks","total":152,"percentage":0},{"id":"gc","total":168175,"percentage":5},{"id":"Gruntfuggly.todo-tree","total":3310986,"percentage":94},{"id":"johnstoncode.svn-scm","total":169,"percentage":0},{"id":"mtxr.sqltools","total":325,"percentage":0},{"id":"rust-lang.rust","total":169,"percentage":0},{"id":"self","total":24413,"percentage":1},{"id":"streetsidesoftware.code-spell-checker","total":3138,"percentage":0},{"id":"voldemortensen.rainbow-tags","total":153,"percentage":0},{"id":"vscode.emmet","total":154,"percentage":0},{"id":"vscode.git","total":336,"percentage":0},{"id":"wayou.vscode-todo-highlight","total":158,"percentage":0}]
[2022-03-23 16:52:31.323] [renderer1] [info] UNRESPONSIVE extension host: starting to profile NOW
[2022-03-23 16:52:34.568] [renderer1] [info] UNRESPONSIVE extension host: received responsive event and cancelling profiling session
[2022-03-23 16:52:37.878] [renderer1] [warning] UNRESPONSIVE extension host: 'Gruntfuggly.todo-tree' took 96% of 3321.499ms, saved PROFILE here: 'file:///tmp/exthost-467699.cpuprofile' [{"id":"gc","total":118686,"percentage":4},{"id":"Gruntfuggly.todo-tree","total":3201567,"percentage":96},{"id":"program","total":486,"percentage":0},{"id":"self","total":321,"percentage":0},{"id":"vscode.merge-conflict","total":170,"percentage":0}]
[2022-03-24 09:44:59.544] [renderer1] [info] UNRESPONSIVE extension host: starting to profile NOW
[2022-03-24 09:45:00.380] [renderer1] [info] UNRESPONSIVE extension host: received responsive event and cancelling profiling session
[2022-03-24 09:45:01.582] [renderer1] [warning] UNRESPONSIVE extension host: 'Gruntfuggly.todo-tree' took 62% of 1461.663ms, saved PROFILE here: 'file:///tmp/exthost-bd1f3b.cpuprofile' [{"id":"2gua.rainbow-brackets","total":15619,"percentage":1},{"id":"aaron-bond.better-comments","total":2330,"percentage":0},{"id":"alefragnani.numbered-bookmarks","total":311,"percentage":0},{"id":"gc","total":95430,"percentage":7},{"id":"Gruntfuggly.todo-tree","total":908378,"percentage":62},{"id":"mtxr.sqltools","total":306,"percentage":0},{"id":"program","total":175,"percentage":0},{"id":"self","total":12967,"percentage":1},{"id":"streetsidesoftware.code-spell-checker","total":8211,"percentage":1},{"id":"voldemortensen.rainbow-tags","total":245591,"percentage":17},{"id":"vscode.git","total":151880,"percentage":10},{"id":"vscode.merge-conflict","total":459,"percentage":0},{"id":"wayou.vscode-todo-highlight","total":475,"percentage":0}]
[2022-03-24 09:45:03.986] [renderer1] [info] UNRESPONSIVE extension host: starting to profile NOW
[2022-03-24 09:45:05.402] [renderer1] [info] UNRESPONSIVE extension host: received responsive event and cancelling profiling session
[2022-03-24 09:45:07.019] [renderer1] [warning] UNRESPONSIVE extension host: 'Gruntfuggly.todo-tree' took 89% of 1515.936ms, saved PROFILE here: 'file:///tmp/exthost-7c6605.cpuprofile' [{"id":"gc","total":78058,"percentage":5},{"id":"Gruntfuggly.todo-tree","total":1344519,"percentage":89},{"id":"program","total":73615,"percentage":5},{"id":"self","total":17099,"percentage":1},{"id":"streetsidesoftware.code-spell-checker","total":477,"percentage":0},{"id":"vscode.git","total":1447,"percentage":0},{"id":"vscode.merge-conflict","total":475,"percentage":0}]
[2022-03-24 09:45:31.308] [renderer1] [info] UNRESPONSIVE extension host: starting to profile NOW
[2022-03-24 09:45:42.776] [renderer1] [warning] UNRESPONSIVE extension host: 'Gruntfuggly.todo-tree' took 89% of 5145.568ms, saved PROFILE here: 'file:///tmp/exthost-778c07.cpuprofile' [{"id":"2gua.rainbow-brackets","total":24861,"percentage":0},{"id":"aaron-bond.better-comments","total":154,"percentage":0},{"id":"alefragnani.numbered-bookmarks","total":155,"percentage":0},{"id":"gc","total":343761,"percentage":7},{"id":"Gruntfuggly.todo-tree","total":4578471,"percentage":89},{"id":"mechatroner.rainbow-csv","total":151,"percentage":0},{"id":"mtxr.sqltools","total":303,"percentage":0},{"id":"program","total":153,"percentage":0},{"id":"redhat.vscode-xml","total":462,"percentage":0},{"id":"redhat.vscode-yaml","total":152,"percentage":0},{"id":"rust-lang.rust","total":133,"percentage":0},{"id":"self","total":5154,"percentage":0},{"id":"serayuzgur.crates","total":307,"percentage":0},{"id":"streetsidesoftware.code-spell-checker","total":4324,"percentage":0},{"id":"voldemortensen.rainbow-tags","total":186739,"percentage":4},{"id":"vscode.emmet","total":154,"percentage":0}]
[2022-03-24 09:47:21.598] [renderer1] [info] UNRESPONSIVE extension host: starting to profile NOW
[2022-03-24 09:47:23.435] [renderer1] [info] UNRESPONSIVE extension host: received responsive event and cancelling profiling session
[2022-03-24 09:47:25.132] [renderer1] [warning] UNRESPONSIVE extension host: 'Gruntfuggly.todo-tree' took 65% of 2171.053ms, saved PROFILE here: 'file:///tmp/exthost-635c0c.cpuprofile' [{"id":"2gua.rainbow-brackets","total":20797,"percentage":1},{"id":"aaron-bond.better-comments","total":2803,"percentage":0},{"id":"alefragnani.numbered-bookmarks","total":150,"percentage":0},{"id":"gc","total":135484,"percentage":6},{"id":"Gruntfuggly.todo-tree","total":1405485,"percentage":65},{"id":"mtxr.sqltools","total":328,"percentage":0},{"id":"program","total":338,"percentage":0},{"id":"redhat.vscode-xml","total":56040,"percentage":3},{"id":"self","total":64535,"percentage":3},{"id":"serayuzgur.crates","total":173,"percentage":0},{"id":"streetsidesoftware.code-spell-checker","total":36177,"percentage":2},{"id":"voldemortensen.rainbow-tags","total":304333,"percentage":14},{"id":"vscode.git","total":142922,"percentage":7},{"id":"vscode.merge-conflict","total":1252,"percentage":0}]
[2022-03-24 09:47:27.080] [renderer1] [info] UNRESPONSIVE extension host: starting to profile NOW
[2022-03-24 09:47:38.696] [renderer1] [warning] UNRESPONSIVE extension host: 'Gruntfuggly.todo-tree' took 93% of 5097.977ms, saved PROFILE here: 'file:///tmp/exthost-d46e31.cpuprofile' [{"id":"gc","total":321246,"percentage":6},{"id":"Gruntfuggly.todo-tree","total":4753598,"percentage":93},{"id":"mtxr.sqltools","total":634,"percentage":0},{"id":"program","total":1411,"percentage":0},{"id":"redhat.vscode-xml","total":154,"percentage":0},{"id":"self","total":18267,"percentage":0},{"id":"serayuzgur.crates","total":139,"percentage":0},{"id":"streetsidesoftware.code-spell-checker","total":152,"percentage":0},{"id":"vscode.emmet","total":158,"percentage":0},{"id":"vscode.git","total":1513,"percentage":0},{"id":"vscode.merge-conflict","total":459,"percentage":0}]
[2022-03-24 09:47:53.816] [renderer1] [info] Setting search error: XHR failed
[2022-03-24 09:47:53.892] [renderer1] [info] Setting search error: XHR failed
[2022-03-24 09:48:07.323] [renderer1] [info] UNRESPONSIVE extension host: starting to profile NOW
[2022-03-24 09:48:08.692] [renderer1] [info] UNRESPONSIVE extension host: received responsive event and cancelling profiling session
[2022-03-24 09:48:10.462] [renderer1] [warning] UNRESPONSIVE extension host: 'Gruntfuggly.todo-tree' took 93% of 1490.583ms, saved PROFILE here: 'file:///tmp/exthost-85a484.cpuprofile' [{"id":"gc","total":85297,"percentage":6},{"id":"Gruntfuggly.todo-tree","total":1392691,"percentage":93},{"id":"mtxr.sqltools","total":140,"percentage":0},{"id":"program","total":475,"percentage":0},{"id":"redhat.vscode-xml","total":845,"percentage":0},{"id":"self","total":4476,"percentage":0},{"id":"streetsidesoftware.code-spell-checker","total":165,"percentage":0},{"id":"vscode.json-language-features","total":6239,"percentage":0}]
[2022-03-24 09:48:12.815] [renderer1] [info] UNRESPONSIVE extension host: starting to profile NOW
[2022-03-24 09:48:15.708] [renderer1] [info] UNRESPONSIVE extension host: received responsive event and cancelling profiling session
[2022-03-24 09:48:18.143] [renderer1] [warning] UNRESPONSIVE extension host: 'Gruntfuggly.todo-tree' took 67% of 2997.809ms, saved PROFILE here: 'file:///tmp/exthost-c1b45c.cpuprofile' [{"id":"2gua.rainbow-brackets","total":75606,"percentage":3},{"id":"aaron-bond.better-comments","total":5298,"percentage":0},{"id":"alefragnani.numbered-bookmarks","total":890,"percentage":0},{"id":"gc","total":218089,"percentage":7},{"id":"Gruntfuggly.todo-tree","total":2003347,"percentage":67},{"id":"mtxr.sqltools","total":1287,"percentage":0},{"id":"program","total":125661,"percentage":4},{"id":"redhat.vscode-xml","total":2167,"percentage":0},{"id":"redhat.vscode-yaml","total":171,"percentage":0},{"id":"self","total":24831,"percentage":1},{"id":"streetsidesoftware.code-spell-checker","total":3995,"percentage":0},{"id":"voldemortensen.rainbow-tags","total":535327,"percentage":18},{"id":"vscode.merge-conflict","total":596,"percentage":0},{"id":"wayou.vscode-todo-highlight","total":324,"percentage":0}]
[2022-03-24 09:48:19.301] [renderer1] [info] UNRESPONSIVE extension host: starting to profile NOW
...
[2022-03-24 10:39:57.731] [renderer1] [info] UNRESPONSIVE extension host: received responsive event and cancelling profiling session
[2022-03-24 10:40:01.778] [renderer1] [warning] UNRESPONSIVE extension host: 'Gruntfuggly.todo-tree' took 90% of 3684.081ms, saved PROFILE here: 'file:///tmp/exthost-40611f.cpuprofile' [{"id":"2gua.rainbow-brackets","total":2310,"percentage":0},{"id":"gc","total":368083,"percentage":10},{"id":"Gruntfuggly.todo-tree","total":3301113,"percentage":90},{"id":"mtxr.sqltools","total":481,"percentage":0},{"id":"program","total":4873,"percentage":0},{"id":"rust-lang.rust","total":1824,"percentage":0},{"id":"self","total":4093,"percentage":0},{"id":"streetsidesoftware.code-spell-checker","total":946,"percentage":0},{"id":"wayou.vscode-todo-highlight","total":160,"percentage":0}]
[2022-03-24 10:40:02.274] [renderer1] [info] UNRESPONSIVE extension host: starting to profile NOW
[2022-03-24 10:40:05.521] [renderer1] [info] UNRESPONSIVE extension host: received responsive event and cancelling profiling session
[2022-03-24 10:40:09.258] [renderer1] [error] Не удается записать файл "/tmp/exthost-f3c8a2.cpuprofile" (Unknown (FileSystemError): Error: ENOSPC: no space left on device, write): Error: Не удается записать файл "/tmp/exthost-f3c8a2.cpuprofile" (Unknown (FileSystemError): Error: ENOSPC: no space left on device, write)
at v.writeFile (vscode-file://vscode-app/usr/share/code/resources/app/out/vs/workbench/workbench.desktop.main.js:605:39831)
at async n._processCpuProfile (vscode-file://vscode-app/usr/share/code/resources/app/out/vs/workbench/workbench.desktop.main.js:1556:46932)
[2022-03-24 10:40:12.273] [renderer1] [warning] {}
[2022-03-24 10:40:14.403] [renderer1] [info] UNRESPONSIVE extension host: starting to profile NOW
[2022-03-24 10:40:24.698] [renderer1] [error] Не удается записать файл "/tmp/exthost-5f42eb.cpuprofile" (Unknown (FileSystemError): Error: ENOSPC: no space left on device, write): Error: Не удается записать файл "/tmp/exthost-5f42eb.cpuprofile" (Unknown (FileSystemError): Error: ENOSPC: no space left on device, write)
at v.writeFile (vscode-file://vscode-app/usr/share/code/resources/app/out/vs/workbench/workbench.desktop.main.js:605:39831)
at async n._processCpuProfile (vscode-file://vscode-app/usr/share/code/resources/app/out/vs/workbench/workbench.desktop.main.js:1556:46932)
[2022-03-24 10:40:29.469] [renderer1] [info] UNRESPONSIVE extension host: starting to profile NOW
[2022-03-24 10:40:30.357] [renderer1] [info] UNRESPONSIVE extension host: received responsive event and cancelling profiling session
[2022-03-24 10:40:31.570] [renderer1] [error] Не удается записать файл "/tmp/exthost-b19d03.cpuprofile" (Unknown (FileSystemError): Error: ENOSPC: no space left on device, write): Error: Не удается записать файл "/tmp/exthost-b19d03.cpuprofile" (Unknown (FileSystemError): Error: ENOSPC: no space left on device, write)
at v.writeFile (vscode-file://vscode-app/usr/share/code/resources/app/out/vs/workbench/workbench.desktop.main.js:605:39831)
at async n._processCpuProfile (vscode-file://vscode-app/usr/share/code/resources/app/out/vs/workbench/workbench.desktop.main.js:1556:46932)
Attach the first two files from that log: exthost.zip
Extension version: 0.0.215 VS Code version: Code 1.65.2 (c722ca6c7eed3d7987c0d5c3df5c45f6b15e77d1, 2022-03-10T15:36:26.048Z) OS version: Linux x64 5.4.0-105-generic Restricted Mode: No
System Info
| Item | Value |
|---|---|
| CPUs | Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz (8 x 3706) |
| GPU Status | 2d_canvas: enabled gpu_compositing: enabled multiple_raster_threads: enabled_on oop_rasterization: disabled_off opengl: enabled_on rasterization: disabled_software skia_renderer: enabled_on video_decode: disabled_software vulkan: disabled_off webgl: enabled webgl2: enabled |
| Load (avg) | 3, 3, 3 |
| Memory (System) | 31.05GB (0.26GB free) |
| Process Argv | --unity-launch --crash-reporter-id 9971e083-5d53-4fa6-9ebd-ad3924f8b78d |
| Screen Reader | no |
| VM | 0% |
| DESKTOP_SESSION | ubuntu |
| XDG_CURRENT_DESKTOP | Unity |
| XDG_SESSION_DESKTOP | ubuntu |
| XDG_SESSION_TYPE | x11 |
Can you post your todo-tree settings?
In particular, is todo-tree.general.enableFileWatcher enabled?
I use default settings and todo-tree.general.enableFileWatcher is not enabled
Can you enabled todo-tree.general.debug and the open the debug channel in the Output window (View->Output and then select Todo Tree). Can you see what is in there?
Also, is there anything unusual about your workspace?
I'm having a similar issue on any workspace (no file watcher, issue goes away with tree disabled), the debug channel has no output.
Can you post your todo-tree settings (i.e. copy them from the json settings). The debug channel should show the command that is being sent to ripgrep - if that's not even being displayed then there is something very wrong happening. Can you also check if there is anything in the developer console (Help->Toggle Developer Tools)
I have a similar issue on v0.0.220, but instead of just consuming /tmp space, it also makes VSCode completely unusable (https://github.com/microsoft/vscode/issues/167320).
Here's a cpuprofile that precisely shows where in todo-tree it spends 4 seconds, freezing everything else: exthost-91a0b1.cpuprofile.txt.
Can you enabled
todo-tree.general.debugand the open the debug channel in the Output window (View->Output and then select Todo Tree). Can you see what is in there?
No, after intial piece of logged data nothing logged in that channel.
My workspace is nothing unusual, but it contains a git repository with a lot of XML files with the overall size about 32 GB (about 23 GB is a .git folder).
There a lot of similar entries in the Window ("Окно" in my Russian VSCode) Log:
...
2023-02-01 16:17:01.974 [info] UNRESPONSIVE extension host: starting to profile NOW
2023-02-01 16:17:14.768 [warning] UNRESPONSIVE extension host: 'gruntfuggly.todo-tree' took 83.339800817482% of 4168.611ms, saved PROFILE here: 'file:///tmp/exthost-4eb682.cpuprofile'
2023-02-01 16:17:28.115 [info] UNRESPONSIVE extension host: starting to profile NOW
2023-02-01 16:17:41.863 [warning] UNRESPONSIVE extension host: 'gruntfuggly.todo-tree' took 83.58967900064674% of 4181.185ms, saved PROFILE here: 'file:///tmp/exthost-7d6a2e.cpuprofile'
2023-02-01 16:17:53.222 [info] UNRESPONSIVE extension host: starting to profile NOW
2023-02-01 16:18:06.006 [warning] UNRESPONSIVE extension host: 'gruntfuggly.todo-tree' took 82.3743163182767% of 4120.332ms, saved PROFILE here: 'file:///tmp/exthost-5eb726.cpuprofile'
2023-02-01 16:19:46.338 [info] UNRESPONSIVE extension host: starting to profile NOW
2023-02-01 16:19:59.519 [warning] UNRESPONSIVE extension host: 'gruntfuggly.todo-tree' took 82.8383527115278% of 4143.586ms, saved PROFILE here: 'file:///tmp/exthost-2e36c6.cpuprofile'
2023-02-01 16:23:16.498 [info] UNRESPONSIVE extension host: starting to profile NOW
2023-02-01 16:23:19.298 [info] UNRESPONSIVE extension host: received responsive event and cancelling profiling session
2023-02-01 16:23:23.301 [warning] UNRESPONSIVE extension host: 'gruntfuggly.todo-tree' took 77.00753405389504% of 2157.095ms, saved PROFILE here: 'file:///tmp/exthost-bc0379.cpuprofile'
2023-02-01 16:25:45.442 [info] UNRESPONSIVE extension host: starting to profile NOW
2023-02-01 16:25:46.327 [info] UNRESPONSIVE extension host: received responsive event and cancelling profiling session
2023-02-01 16:25:47.087 [warning] UNRESPONSIVE extension host: 'gruntfuggly.todo-tree' took 52.06527909283683% of 461.352ms, saved PROFILE here: 'file:///tmp/exthost-f8714a.cpuprofile'
The last 2 profiles from that log: exthost-todo-tree-logs.zip
The last lines in Todo Tree output in View->Output (note that timings from yesterday, so it didn't log anything for more than a day):
...
13:35:18.700 Found 2351 items
13:35:18.700 Applying globs to 2351 items...
13:35:18.766 Remaining items: 2351
OK, so that's found nearly 2500 Todo's - is that what you would expect with your codebase? And you definitely haven't changed any of the default settings?
Can you scroll back in the output window and find the command it generated for the search? It should start with the path to ripgrep. The line before that should also show the pattern which it is searching for which would be good to see.
Would you be prepared to try out some debug versions of the extension for me? Because the extension is minified the cpu logs are very difficult to get much out of - if I post a .vsix package that should make it easier to pinpoint where the blockage is.
OK, so that's found nearly 2500 Todo's - is that what you would expect with your codebase?
Yes, that seems the case, although I do not need most of them. Probably, in my case the solution could be just ignore some folders.
And you definitely haven't changed any of the default settings?
Yes, the default settings except todo-tree.general.debug: true.
Can you scroll back in the output window and find the command it generated for the search?
All "Pattern" lines shows the same regexp, all "Command" lines different only by the name of the -f argument and the directory to find. The one of occurrences:
...
13:35:14.124 Searching /home/mingun/Projects/ksc-rs...
13:35:14.124 Writing pattern file:/home/mingun/.config/Code/User/workspaceStorage/34a1d0922531e34b34bc5aed6b6f6fb1/Gruntfuggly.todo-tree/2b8g2hcrfd.txt
13:35:14.124 Pattern:(//|#|<!--|;|/\*|^|^[ \t]*(-|\d+.))\s*(\[x\]|\[ \]|XXX|TODO|HACK|FIXME|BUG)
13:35:14.124 Command: /usr/share/code/resources/app/node_modules.asar.unpacked/@vscode/ripgrep/bin/rg --no-messages --vimgrep -H --column --line-number --color never --max-columns=1000 --no-config -f "/home/mingun/.config/Code/User/workspaceStorage/34a1d0922531e34b34bc5aed6b6f6fb1/Gruntfuggly.todo-tree/2b8g2hcrfd.txt" -g "!**/node_modules/*/**" "/home/mingun/Projects/ksc-rs"
13:35:14.597 Search results:
/home/mingun/Projects/ksc-rs/src/error.rs:15:35: Expression(ParseError<LineCol>),//TODO: Add information about field
13:35:14.768 Search results:
...("Search results" group repeated several times...)
13:35:18.686 Match (File): {"fsPath":"/home/mingun/Projects/ksc-rs/src/error.rs","line":15,"column":35,"match":" Expression(ParseError<LineCol>),//TODO: Add information about field","uri":{"$mid":1,"path":"/home/mingun/Projects/ksc-rs/src/error.rs","scheme":"file"}}
13:35:18.686 Match (File): {"fsPath":"/home/mingun/Projects/ksc-rs/formats/font/ttf.ksy","line":141,"column":15,"match":" # TODO","uri":{"$mid":1,"path":"/home/mingun/Projects/ksc-rs/formats/font/ttf.ksy","scheme":"file"}}
...(repeated "Match (File)" lines)...
13:35:18.700 Found 2351 items
13:35:18.700 Applying globs to 2351 items...
13:35:18.766 Remaining items: 2351
The log started at [2023-01-31] 13:28:04.447 and end at 13:35:18.766. That is strange that nothing logged after this time, I have a feeling that logging in that channel just stop working.
Would you be prepared to try out some debug versions of the extension for me?
Yes, I can do that.
OK thanks - I'll put together a debug version with some options and post it here.
I think the issue is simply the amount of items it is finding - and currently it builds a list of everything first then removes things you're not interested in - which is not the most efficient way to doing things!
In the short term, you can define todo-tree.filtering.includeGlobs to limit the search to only folders you're interested in, which should help.
I'm also having this exact issue. It says Todo-Tree is continuously taking more than 2 seconds (every 5 seconds or so, sometimes, freezing the editor more like 40 seconds sometimes and making the editor unusable). To the point I had to disable it because it was being impossible to work.
I append that .cpuprofile file: exthost-7b45eb.cpuprofile.txt
Also, I created a debug channel, and nothing weird (IMHO):
...
16:21:05.993 Found 328 items
16:21:05.993 Applying globs to 328 items...
16:21:06.006 Remaining items: 328
(I think is not a crazy number or anything, and my workspace is not so big)
Todo-tree Is my fav and most useful extension without a doubt (thank you so much for it 🍀), so it hurts me so much not being able to use it. I really hope this gets fixed 🙏
~~Not a solution (the UNRESPONSIVE extension host: 'gruntfuggly.todo-tree' and freezes still happening), but disabling the highlights reduced their frequency.~~ Edit: Well, not so much, still freezing a lot
This seems a very weird rendering issue (I got those messages on renderer.log). I guess that despite disabling the highlights those message must be when rendering the tree or something.