Skip to content

code --install-extension crashes when called rapidly in succession #256031

@lfvJonas

Description

@lfvJonas

code --install-extension crashes when called rapidly in succession

We have been using this command to install extension for several years without problems. But recently our install script has been failing due to this issue.

Environment

  • VS Code version: 1.102.0
    Commit: cb0c47c0cfaad0757385834bd89d410c78a856c0
    Architecture: x64
  • OS: Ubuntu 24.04 (installed via .deb)
  • Shell: Bash

Reproduction Steps

When repeatedly running the following command in rapid succession:

code --install-extension {{extension}}

VS Code eventually crashes with a fatal v8::ToLocalChecked Empty MaybeLocal error.

Example:

FATAL ERROR: v8::ToLocalChecked Empty MaybeLocal
----- Native stack trace -----

----- JavaScript stack trace -----

1: getPackageScopeConfig (node:internal/modules/package_json_reader:160:33)
2: getPackageJSONURL (node:internal/modules/package_json_reader:237:25)
3: packageResolve (node:internal/modules/esm/resolve:778:81)
4: moduleResolve (node:internal/modules/esm/resolve:864:18)
5: defaultResolve (node:internal/modules/esm/resolve:994:11)
6: nextResolve (node:internal/modules/esm/hooks:748:28)
7: resolve (data:text/javascript;base64,...):13:10)
8: nextResolve (node:internal/modules/esm/hooks:748:28)
9: resolve (node:internal/modules/esm/hooks:240:30)
10: handleMessage (node:internal/modules/esm/worker:199:24)

Aborted (core dumped)

Expected Behavior

The command should:

Check if the extension is installed.

Return a message that it is already installed (as it does initially).

Never crash or dump core, even if invoked rapidly.

Actual Behavior

After several fast consecutive runs, the command crashes with:

FATAL ERROR: v8::ToLocalChecked Empty MaybeLocal
----- Native stack trace -----
...
Aborted (core dumped)

This behavior is consistently reproducible when executing the command 10–12 times quickly in a row. And no matter what extension is being installed.

Full Output Snippet

user@computer:~$ code --install-extension ms-python.black-formatter
Installing extensions...
Extension 'ms-python.black-formatter' v2025.2.0 is already installed. ...

(repeated several times...)

user@computer:~$ code --install-extension ms-python.black-formatter
Installing extensions...
Extension 'ms-python.black-formatter' v2025.2.0 is already installed. ...

FATAL ERROR: v8::ToLocalChecked Empty MaybeLocal
----- Native stack trace -----

----- JavaScript stack trace -----

1: getPackageScopeConfig (node:internal/modules/package_json_reader:160:33)
2: getPackageJSONURL (node:internal/modules/package_json_reader:237:25)
3: packageResolve (node:internal/modules/esm/resolve:778:81)
4: moduleResolve (node:internal/modules/esm/resolve:864:18)
5: defaultResolve (node:internal/modules/esm/resolve:994:11)
6: nextResolve (node:internal/modules/esm/hooks:748:28)
7: resolve (data:text/javascript;base64,...):13:10)
8: nextResolve (node:internal/modules/esm/hooks:748:28)
9: resolve (node:internal/modules/esm/hooks:240:30)
10: handleMessage (node:internal/modules/esm/worker:199:24)

Aborted (core dumped)

Notes

This may indicate a race condition or lack of thread/process safety when managing Marketplace queries or extension states via CLI.

Adding 1 second wait between installs seams to resolve the issue.

Metadata

Metadata

Assignees

Labels

bugIssue identified by VS Code Team member as probable bugfreeze-slow-crash-leakVS Code crashing, performance, freeze and memory leak issuesworkbench-cliVS Code Command line issues

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions