Unresponsive for 30–90s intermittently
- Dominant language
- TypeScript
- Stars
- 193k
- Forks
- 42.4k
- PR merge metrics
- PR metrics pending
Description
Does this issue occur when all extensions are disabled?: Yes/No
- VS Code Version:
- OS Version:
Type: Bug
Intermittently, a VS Code window becomes fully unresponsive for **~30–90 seconds**, then
recovers on its own. During the hang:
- The file explorer, editor, and command palette are all frozen
- Files "take a while to show up" in the explorer after the hang clears
- The DevTools console shows:
```
extensionDescriptionRegistry.ts:371 The customer named _initialize has been
holding on to the lock for 30s. This might be a problem.
```
The freeze is **intermittent** and **not tied to a specific workspace** (happens across
different folders, including small ones).
Some observations using help of AI (gave console logs, output logs):
# Evidence collected
### 1. `_initialize` holding the extension-registry lock 30s+
The renderer logs the `extensionDescriptionRegistry.ts:371` "holding on to the lock for
30s" warning at the time of the hang. This lock is global to extension activation, so while
it's held, all extension operations (and dependent UI like file decorations) stall.
### 2. Ext-host log shows a ~46–48s silent gap on window/workspace open
Multiple captures show the extension host going completely silent for 45–48 seconds,
always right after `[AccountPolicyGate] apply` / DefaultAccount initialization, e.g.:
```
[DefaultAccount] Fetching managed settings from: https://api.github.com/copilot_internal/managed_settings
api.github.com/copilot_internal/managed_settings:1 Failed to load resource: 404
[DefaultAccount] Managed settings fetch returned non-success status 404; falling back to local-only policy
...46s of silence in exthost.log...
```
DefaultAccount re-initializes multiple times per session and re-fetches
`copilot_internal/user`, `/v2/token`, `/managed_settings` (404s every time on this account),
`/mcp_registry`.
### 4. Repeated `DisposableStore already disposed` during account init
```
[Extension Host] Error: Trying to add a disposable to a DisposableStore that has already
been disposed of. The added object will be leaked!
at mf.doCreateOutputChannel (extensionHostProcess.js:542:...)
```
Fires 4x in a row during DefaultAccount re-initialization — suggests overlapping
init cycles (a re-init starting before the previous finished).
### 5. macOS resource diagnostic: sustained disk writes
macOS auto-generated a `.diag` (Microstackshots) flagging VS Code for **2.1 GB of
file-backed writes over ~10 hours** (57.5 KB/s), exceeding the background limit. The
microstackshots attribute writes to **spdlog logging** and **node-sqlite3 state.vscdb
inserts** (`sqlite3BtreeInsert → writeJournalHdr → pwrite`). (Note: 57 KB/s is not
extreme; included for completeness — may or may not be related.)
### 6. Unresponsive vs. recovered log diff
Snapshots taken during the freeze vs. after recovery show the window unblocks precisely
when recursive file-watcher registrations complete and several `SearchService#search`
runs are **Canceled** (searches taking too long and being aborted).
## What I've tried (did not resolve)
- Disabled all webview extensions — freeze persists
- VACUUM'd state.vscdb (global + workspace) — reduced size, freeze persists
- Cleared workspace state.vscdb — freeze persists
- Confirmed it's not workspace-content-specific (happens on small folders, no node_modules)
- Ruled out swap/memory pressure (occurs with low swap, load normal)
- CPU traces and native `sample` captures mostly caught idle/recovered state (freeze is
transient and hard to sample in-window)
VS Code version: Code 1.130.0 (Universal) (1b6a188127eeaf9194f945eb6eb89a657e93c54c, 2026-07-22T14:55:04Z)
OS version: Darwin arm64 25.5.0
Modes:
System Info
|Item|Value|
|---|---|
|CPUs|Apple M2 Pro (12 x 2400)|
|GPU Status|2d_canvas: enabled
GPU0: VENDOR= 0x106b [Google Inc. (Apple)], DEVICE=0x0000 [ANGLE (Apple, ANGLE Metal Renderer: Apple M2 Pro, Version 26.5.1 (Build 25F80))], DRIVER_VENDOR=Apple, DRIVER_VERSION=26.5.1 *ACTIVE*
Machine model name: Mac
Machine model version: 14.10
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: enabled_on
trees_in_viz: disabled_off
video_decode: enabled
video_encode: enabled
webgl: enabled
webgpu: enabled
webnn: disabled_off|
|Load (avg)|5, 6, 6|
|Memory (System)|32.00GB (0.56GB free)|
|Process Argv||
|Screen Reader|no|
|VM|0%|
Extensions (49)
Name|Identifier|Author|Version
---|---|---|---
Tasks|actboy168.tasks|actboy168|0.16.1
SQL Formatter|adpyke.vscode-sql-formatter|adpyke|1.4.4
Increment Selection|albymor.increment-selection|albymor|0.2.0
vscode-json|andyyaldoo.vscode-json|andyyaldoo|1.5.2
Markdown Preview Mermaid Support|bierner.markdown-mermaid|bierner|1.32.1
markdownlint|davidanson.vscode-markdownlint|DavidAnson|0.61.2
Docker DX|docker.docker|docker|0.18.0
Git History|donjayamanne.githistory|donjayamanne|0.6.20
GitHub Repositories|github.remotehub|GitHub|0.64.0
GitHub Actions|github.vscode-github-actions|github|0.32.3
Spreadsheet Viewer|grapecity.gc-excelviewer|GrapeCity|4.2.66
Selected Lines Count|gurumukhi.selected-lines-count|gurumukhi|1.4.0
Draw.io Integration|hediet.vscode-drawio|hediet|1.9.0
REST Client|humao.rest-client|humao|0.25.1
Base64|m4ns0ur.base64|m4ns0ur|1.0.0
PDF Viewer|mathematic.vscode-pdf|mathematic|0.1.11
DotENV|mikestead.dotenv|mikestead|1.0.1
Container Tools|ms-azuretools.vscode-containers|ms-azuretools|2.4.5
Playwright Test for VSCode|ms-playwright.playwright|ms-playwright|1.1.19
Data Wrangler|ms-toolsai.datawrangler|ms-toolsai|1.24.2
Jupyter|ms-toolsai.jupyter|ms-toolsai|2025.9.1
Jupyter Keymap|ms-toolsai.jupyter-keymap|ms-toolsai|1.1.2
Jupyter Notebook Renderers|ms-toolsai.jupyter-renderers|ms-toolsai|1.3.0
Jupyter Cell Tags|ms-toolsai.vscode-jupyter-cell-tags|ms-toolsai|0.1.9
Jupyter Slide Show|ms-toolsai.vscode-jupyter-slideshow|ms-toolsai|0.1.6
Remote - SSH|ms-vscode-remote.remote-ssh|ms-vscode-remote|0.124.0
Remote - SSH: Editing Configuration Files|ms-vscode-remote.remote-ssh-edit|ms-vscode-remote|0.87.0
Live Preview|ms-vscode.live-server|ms-vscode|0.4.19
Remote Explorer|ms-vscode.remote-explorer|ms-vscode|0.5.0
Remote Repositories|ms-vscode.remote-repositories|ms-vscode|0.42.0
Remote - Tunnels|ms-vscode.remote-server|ms-vscode|1.5.3
Flame Chart Visualizer for JavaScript Profiles|ms-vscode.vscode-js-profile-flame|ms-vscode|1.0.11
VS Code Speech|ms-vscode.vscode-speech|ms-vscode|0.16.0
Jest|orta.vscode-jest|Orta|6.4.4
SQLite Viewer|qwtel.sqlite-viewer|qwtel|25.12.2
XML|redhat.vscode-xml|redhat|0.29.3
YAML|redhat.vscode-yaml|redhat|1.24.0
Git Web Links for VS Code|reduckted.vscode-gitweblinks|reduckted|2.15.1
Sort JSON objects|richie5um2.vscode-sort-json|richie5um2|1.20.0
Partial Diff|ryu1kn.partial-diff|ryu1kn|1.4.6
Cline|saoudrizwan.claude-dev|saoudrizwan|4.0.11
SAP AI Core toolkit|sapse.aicore-extension|SAPSE|2.3.8
Code Spell Checker|streetsidesoftware.code-spell-checker|streetsidesoftware|4.5.6
Even Better TOML|tamasfe.even-better-toml|tamasfe|0.21.2
Error Lens|usernamehw.errorlens|usernamehw|3.28.0
Vitest|vitest.explorer|vitest|1.50.8
Cloudfoundry Manifest YML Support|vmware.vscode-manifest-yaml|vmware|1.56.0
JWT Debugger|yokawasa.jwt-debugger|yokawasa|0.6.0
Markdown All in One|yzhang.markdown-all-in-one|yzhang|3.6.3
Contributor guide
Assessment
This issue has not been assessed yet.