Skip to content

[Bug]: watcher.close() deadlocks when called inside its event callback #9462

Description

@sapphi-red

Reproduction link or steps

  1. Clone https://github.com/kylecannon/rolldown-watch-fd-bug
  2. Run pnpm i
  3. Run node repro-close-deadlock.mjs

What is expected?

No deadlock happens

What is actually happening?

Deadlock happens

System Info

System:
    OS: macOS 15.7.5
    CPU: (16) arm64 Apple M3 Max
    Memory: 490.63 MB / 128.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 22.22.0 - /Users/kyle/.nvm/versions/node/v22.22.0/bin/node
    Yarn: 1.22.22 - /Users/kyle/.nvm/versions/node/v22.22.0/bin/yarn
    npm: 10.9.4 - /Users/kyle/.nvm/versions/node/v22.22.0/bin/npm
    pnpm: 9.15.9 - /Users/kyle/.nvm/versions/node/v22.22.0/bin/pnpm
    bun: 1.2.10 - /Users/kyle/.bun/bin/bun
  Browsers:
    Chrome: 147.0.7727.56
    Chrome Canary: 149.0.7790.0
    Safari: 26.4
  npmPackages:
    rolldown: 1.0.0-rc.13 => 1.0.0-rc.13

Any additional comments?

Originally reported at #9109

Metadata

Metadata

Assignees

Type

Fields

Priority

None yet

Effort

None yet

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions