Skip to content

Commit d1bff3b

Browse files
authored
fix(pool): runner's error listener causing MaxListenersExceededWarning (#8820)
1 parent d19cece commit d1bff3b

File tree

1 file changed

+6
-6
lines changed
  • packages/vitest/src/node/pools

1 file changed

+6
-6
lines changed

packages/vitest/src/node/pools/pool.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -76,12 +76,6 @@ export class Pool {
7676
const activeTask = { task, resolver, method, cancelTask }
7777
this.activeTasks.push(activeTask)
7878

79-
runner.on('error', (error) => {
80-
resolver.reject(
81-
new Error(`[vitest-pool]: Worker ${task.worker} emitted error.`, { cause: error }),
82-
)
83-
})
84-
8579
async function cancelTask() {
8680
await runner.stop()
8781
resolver.reject(new Error('Cancelled'))
@@ -104,6 +98,12 @@ export class Pool {
10498
runner.on('message', onFinished)
10599

106100
if (!runner.isStarted) {
101+
runner.on('error', (error) => {
102+
resolver.reject(
103+
new Error(`[vitest-pool]: Worker ${task.worker} emitted error.`, { cause: error }),
104+
)
105+
})
106+
107107
const id = setTimeout(
108108
() => resolver.reject(new Error(`[vitest-pool]: Timeout starting ${task.worker} runner.`)),
109109
WORKER_START_TIMEOUT,

0 commit comments

Comments
 (0)