Closed InfraK closed 6 months ago
I can confirm the same issue but with pnpm and within a windows github action matrix.
Not sure why it happens in this case, but you can increase timeout with test.teardownTimeout
option for now.
@sheremet-va, the timeout makes no difference, we have increased it to really high amounts and still had the same issue.
This is really slowing down our pipeline and our local workflows, is there any way we can help to troubleshoot or debug? Not even sure where to start.
This is really slowing down our pipeline and our local workflows, is there any way we can help to troubleshoot or debug? Not even sure where to start.
It means you start some process and don't end it. Check you websocket/DB/playwright connections.
@sheremet-va
Not sure what process we could be opening inside that very minimal repo, just using standard libraries for react development, in our real scenario, we are only testing frontend code without any Websockets or DB connections.
I'm attaching the log from process._getActiveHandles()
which I included right before the timeout message, you can review it here here. I can't make heads or tails of the log itself, but maybe you can.
Any further guidance on where to look for issues will be greatly appreciated! Thank you for your time and the hard work you are doing here, I really really like vitest.
Not sure what process we could be opening inside that very minimal repo, just using standard libraries for react development
The repro is fixed, if I increase timeout there. You are saying it didn't work for your project.
I can't make heads or tails of the log itself, but maybe you can.
I'm also not sure what it means, but thanks for the way to check it -- I didn't know about this method π
@sheremet-va Still seeing the issue, looking for forward guidance if you have any.
What I've tried so far:
wtfnode
library gives this small report (It's the previous log i found, but in more human form"
close timed out after 1000ms
^C[WTF Node?] open handles:
It seems like there is in fact an open child process that didn't exit, however, I'm not sure what could be spawning it, we are using a very small set of libraries, I'm trying to reproduce the same on StackBlitz but no luck so far.
Process list (not sure if this helps or not)
25552 ttys003 0:00.01 sh ./test-forever.sh
25933 ttys003 0:00.26 npm run test
25934 ttys003 0:00.00 sh /var/folders/7v/bfghyq3x19108d32wxqzgc9h0000gn/T/test-479d11ca.sh
25935 ttys003 0:00.05 node /Users/santiagokent/.../node_modules/.bin/vitest run
25936 ttys003 2:22.86 node /Users/santiagokent/.../node_modules/vitest/dist/cli.mjs run
25938 ttys003 0:00.21 /Users/santiagokent/.../node_modules/esbuild-darwin-arm64/bin/esbuild --service=0.15.7 --ping
After experimenting a little bit more, we found that disabling threads decreases significantly the chances of getting this error, not sure if this can provide guidance as to what could be failing, this is at least some mitigation for our local workflows and pipeline.
We manually need to cleanup after testing-library
.
Same problem on Github Action with Node.js >= 16 https://github.com/node-modules/urllib/actions/runs/3122054130/jobs/5063741291
Same problem on Github Action with Node.js >= 16 https://github.com/node-modules/urllib/actions/runs/3122054130/jobs/5063741291
Add --no-threads
can temporary fixes.
https://github.com/node-modules/urllib/pull/398/files#diff-7ae45ad102eab3b6d7e7896acd08c427a9b25b346470d7bc6507b6481575d519R53
Any movement on this? Our CI is blocked at the moment.
Any movement on this? Our CI is blocked at the moment.
Zero movement. This is not a global problem, it's not reproducible to everyone. If you get this error even with hight teardownTimeout
it means you have a hanging process that needs to be resolved.
We're experiencing the same issue. Setting threads: false
in vitest.config.ts
solved the issue, as @fengmk2 indicated.
All of our tests are simple unit tests (99% synchronous). There are no open DB/Playwright/websocket processes that could be causing the hang.
@JoshuaToenyes same here! no hanging process for me and get the same error.
Seeing this "close timed out after 1000ms" message on Drone CI as well. Test run still succeeds, and all tests are very simple unit tests, nothing fancy, nothing that would keep the event loop alive so I assume any open handles must be inside vitest itself.
Does unfortunately not reproduce locally, even with CI
variable set.
Curious if others are also using c8
for coverage reporting? I just recently started getting this while upgrading to node 18. I tried everything I could think of to track it down in my code, but just switching to istanbul
for the coverage seems to have fixed/hidden whatever the issue was. Didn't seem to matter which tests I ran or didn't run, always got the time out error and then had to manually stop the process.
Curious if others are also using
c8
for coverage reporting? I just recently started getting this while upgrading to node 18. I tried everything I could think of to track it down in my code, but just switching toistanbul
for the coverage seems to have fixed/hidden whatever the issue was. Didn't seem to matter which tests I ran or didn't run, always got the time out error and then had to manually stop the process.
@vidarc I don't think it's related to coverage. We use istanbul
and still have the issue. Also, we see the timeout even if not running with coverage.
It could be related to the Node.js version, though. I haven't tried with Node.js < 18 or 19.
For me, it was on Node 18 with no coverage enabled.
This is also not working as correct in our Github Action workflow. Some of our tests fail, but the vitest
command exits with code 0, therefore the step is successful. Additionally it doesn't output all logs. I was looking in the vitest code and noticed that if the teardownTimeout
is exceeded, the process exists with code 0. I believe this is what is causing the false positives in our pipeline. See the code I am referring to here
Curious if others are also using
c8
for coverage reporting? I just recently started getting this while upgrading to node 18. I tried everything I could think of to track it down in my code, but just switching toistanbul
for the coverage seems to have fixed/hidden whatever the issue was. Didn't seem to matter which tests I ran or didn't run, always got the time out error and then had to manually stop the process.@vidarc I don't think it's related to coverage. We use
istanbul
and still have the issue. Also, we see the timeout even if not running with coverage.It could be related to the Node.js version, though. I haven't tried with Node.js < 18 or 19.
@vidarc @JoshuaToenyes I'm on Node 16, and I started to have this problem when I added c8
for code coverage. When I switched to instanbul
the problem went away.
I happen to have one case where it reproduces locally, in a around 1 in 10 runs. When it happens, the node process goes to 100% cpu and hangs forever. I managed to hook up the inspector:
processReallyExit
is from module signal-exit
module which vitest
has multiple dependencies on:
vitest@0.25.3
βββ¬ @antfu/install-pkg@0.1.1
β βββ¬ execa@5.1.1
β βββ signal-exit@3.0.7
βββ¬ execa@6.1.0
β βββ signal-exit@3.0.7
βββ¬ log-update@5.0.1
βββ¬ cli-cursor@4.0.0
βββ¬ restore-cursor@4.0.0
βββ signal-exit@3.0.7
reallyExit
is a undocumented node internal which apparently is being monkey-patched by signal-exit
.
Very good find, @silverwind!
Could you perhaps share how you managed to attach the inspector? I would love to help get to the bottom of this, as it's also blocking my CI.
Just node --inspect node_modules/.bin/vitest
with chrome chrome://inspect/#devices
waiting in background, see here. The problem with the method is one needs to be quick with opening the inspector window because once the process stalls, it seems impossible to hook up the inspector.
BTW the tests I reproduced this with are doing a bit fancy stuff like starting/stopping a HTTP server, so I think it's definitely possibly that in this case it's not a bug in vite itself, but it still smells like one because the exact same tests run fine in jest
.
We had a similar problem on our CI - Vitest tests completed successfully, but sometimes the process would not stop after that and the whole job would hang until it closed by timeout.
I made a script like this:
// vitest_ci.mjs
import 'zx/globals';
import psList from 'ps-list';
setTimeout(async () => {
console.log(await psList())
$`exit`
}, 2 * 60 * 1000)
try {
await $`yarn vitest run`;
} catch (p) {
$`exit ${p.exitCode}`;
}
and used it instead of yarn vitest run
.
I then ran the CI several times until I caught the hang. In the list of processes I saw esbuild
π
This looks like the problem from this esbuild issue and it was fixed in version 0.16.3 - two weeks ago
The latest version of Vitest uses esbuild@0.16.10
- we've also updated our Vitest version and haven't caught a hang like this on CI in the last few days π
UPD: We still see this problem, but much less often than before the update.
Still seeing it with esbuild 0.16.10, but I guess this issue has multiple potential causes, so the above update may have fixed one, but not all of them.
Yes, I am seeing this issue with esbuild 0.16.10 too.
I get this issue too on node 19.3. Its hard to gauge how to dig into this one...
Does anyone have a reproduction that I can look into? Repro in the issue doesn't reproduce this error for me.
I am getting it for all my CI builds today, but no luck in reproducing this locally sorry
Please, check if 0.27.1 fixes the issue. I also added hanging-process
reporter that should collect all open processes and show them, if Vitest cannot close it:
// vite.config.ts
export default {
test: {
reportes: ['default', 'hanging-process']
}
}
You can also write your own reporter to track all running processes (it doesn't track processes inside a worker):
// vite.config.ts
const reporter = {
onInit() {
startTracking()
},
onProcessTimeout() {
displayProcesses()
}
}
export default {
test: {
reportes: ['default', reporter]
}
}
I got 4 tests running. Each one is 13 minutes long, will report back later.
I ran 5 CI runs in the end just to be sure, no more hanging process. It always exited properly. I think this is fixed!
It's great, because running each commit CI for couple hours was becoming quite expensive.
I've actually added timeout-minutes: 30
to most of our jobs to prevent this in the future
I ran multiple CI runs on my project where I've been experiencing this issue. It failed on the 3rd re-try of my action that runs vitest run --coverage
.
https://github.com/rosen-score/chess-fetcher/actions/runs/3898112270/jobs/6656817413
So it's intermittent and if I do a manual re-run it passes.
Unfortunately my repo isn't a basic reproduction for the issue, but I suspect it might be caused by my globalSetup
that has a setup()
and teardown()
that starts/stops a Fastify server that I use in my tests.
Edit: Added vitest hanging-process reporter. It took 9 manual re-runs and then timed out on the last one. Here is the output
We just updated vitest
to 0.27.1
and added the hanging-process
reporter, this is what it's printing out when it hangs:
... it then repeats the # FILEHANDLE
message a couple hundred times.
Similar result over here
There are 296 handle(s) keeping the process running
# Tinypool
node:internal/async_hooks:202
node:internal/async_hooks:505
file:///Users/myusername/projectsfolder/myproject/node_modules/tinypool/dist/esm/index.js:36
file:///Users/myusername/projectsfolder/myproject/node_modules/tinypool/dist/esm/index.js:57
file:///Users/myusername/projectsfolder/myproject/node_modules/tinypool/dist/esm/index.js:734
file:///Users/myusername/projectsfolder/myproject/node_modules/vitest/dist/chunk-snapshot-manager.1a2dbf96.js:7328
file:///Users/myusername/projectsfolder/myproject/node_modules/vitest/dist/chunk-snapshot-manager.1a2dbf96.js:10628
file:///Users/myusername/projectsfolder/myproject/node_modules/vitest/dist/chunk-snapshot-manager.1a2dbf96.js:10643
# WORKER
node:internal/async_hooks:202
node:internal/worker:186
file:///Users/myusername/projectsfolder/myproject/node_modules/tinypool/dist/esm/index.js:500
file:///Users/myusername/projectsfolder/myproject/node_modules/tinypool/dist/esm/index.js:485
file:///Users/myusername/projectsfolder/myproject/node_modules/tinypool/dist/esm/index.js:475
file:///Users/myusername/projectsfolder/myproject/node_modules/tinypool/dist/esm/index.js:739
file:///Users/myusername/projectsfolder/myproject/node_modules/vitest/dist/chunk-snapshot-manager.1a2dbf96.js:7328
file:///Users/myusername/projectsfolder/myproject/node_modules/vitest/dist/chunk-snapshot-manager.1a2dbf96.js:10628
file:///Users/myusername/projectsfolder/myproject/node_modules/vitest/dist/chunk-snapshot-manager.1a2dbf96.js:10643
# WORKER
node:internal/async_hooks:202
node:internal/worker:186
file:///Users/myusername/projectsfolder/myproject/node_modules/tinypool/dist/esm/index.js:500
file:///Users/myusername/projectsfolder/myproject/node_modules/tinypool/dist/esm/index.js:485
file:///Users/myusername/projectsfolder/myproject/node_modules/tinypool/dist/esm/index.js:475
file:///Users/myusername/projectsfolder/myproject/node_modules/tinypool/dist/esm/index.js:739
file:///Users/myusername/projectsfolder/myproject/node_modules/vitest/dist/chunk-snapshot-manager.1a2dbf96.js:7328
file:///Users/myusername/projectsfolder/myproject/node_modules/vitest/dist/chunk-snapshot-manager.1a2dbf96.js:10628
file:///Users/myusername/projectsfolder/myproject/node_modules/vitest/dist/chunk-snapshot-manager.1a2dbf96.js:10643
# WORKER
node:internal/async_hooks:202
node:internal/worker:186
file:///Users/myusername/projectsfolder/myproject/node_modules/tinypool/dist/esm/index.js:500
file:///Users/myusername/projectsfolder/myproject/node_modules/tinypool/dist/esm/index.js:485
file:///Users/myusername/projectsfolder/myproject/node_modules/tinypool/dist/esm/index.js:475
file:///Users/myusername/projectsfolder/myproject/node_modules/tinypool/dist/esm/index.js:739
file:///Users/myusername/projectsfolder/myproject/node_modules/vitest/dist/chunk-snapshot-manager.1a2dbf96.js:7328
file:///Users/myusername/projectsfolder/myproject/node_modules/vitest/dist/chunk-snapshot-manager.1a2dbf96.js:10628
file:///Users/myusername/projectsfolder/myproject/node_modules/vitest/dist/chunk-snapshot-manager.1a2dbf96.js:10643
# WORKER
node:internal/async_hooks:202
node:internal/worker:186
file:///Users/myusername/projectsfolder/myproject/node_modules/tinypool/dist/esm/index.js:500
file:///Users/myusername/projectsfolder/myproject/node_modules/tinypool/dist/esm/index.js:485
file:///Users/myusername/projectsfolder/myproject/node_modules/tinypool/dist/esm/index.js:475
file:///Users/myusername/projectsfolder/myproject/node_modules/tinypool/dist/esm/index.js:739
file:///Users/myusername/projectsfolder/myproject/node_modules/vitest/dist/chunk-snapshot-manager.1a2dbf96.js:7328
file:///Users/myusername/projectsfolder/myproject/node_modules/vitest/dist/chunk-snapshot-manager.1a2dbf96.js:10628
file:///Users/myusername/projectsfolder/myproject/node_modules/vitest/dist/chunk-snapshot-manager.1a2dbf96.js:10643
# WORKER
node:internal/async_hooks:202
node:internal/worker:186
file:///Users/myusername/projectsfolder/myproject/node_modules/tinypool/dist/esm/index.js:500
file:///Users/myusername/projectsfolder/myproject/node_modules/tinypool/dist/esm/index.js:485
file:///Users/myusername/projectsfolder/myproject/node_modules/tinypool/dist/esm/index.js:475
file:///Users/myusername/projectsfolder/myproject/node_modules/tinypool/dist/esm/index.js:739
file:///Users/myusername/projectsfolder/myproject/node_modules/vitest/dist/chunk-snapshot-manager.1a2dbf96.js:7328
file:///Users/myusername/projectsfolder/myproject/node_modules/vitest/dist/chunk-snapshot-manager.1a2dbf96.js:10628
file:///Users/myusername/projectsfolder/myproject/node_modules/vitest/dist/chunk-snapshot-manager.1a2dbf96.js:10643
# FILEHANDLE
node:internal/async_hooks:202
# FILEHANDLE
node:internal/async_hooks:202
# FILEHANDLE
node:internal/async_hooks:202
repeating # FILEHANDLE
a lot.
We just got a timeout on CI again, with 0.27.1. I do think the fix did help as it happens more rarely now, but it can definitely still happen
``` There are 939 handle(s) keeping the process running # Tinypool node:internal/async_hooks:202 node:internal/async_hooks:505 file:///home/runner/work/official-graphql/official-graphql/graphql/node_modules/tinypool/dist/esm/index.js:36 file:///home/runner/work/official-graphql/official-graphql/graphql/node_modules/tinypool/dist/esm/index.js:57 file:///home/runner/work/official-graphql/official-graphql/graphql/node_modules/tinypool/dist/esm/index.js:734 file:///home/runner/work/official-graphql/official-graphql/graphql/node_modules/vitest/dist/chunk-snapshot-manager.1a2dbf96.js:7328 file:///home/runner/work/official-graphql/official-graphql/graphql/node_modules/vitest/dist/chunk-snapshot-manager.1a2dbf96.js:10628 file:///home/runner/work/official-graphql/official-graphql/graphql/node_modules/vitest/dist/chunk-snapshot-manager.1a2dbf96.js:10643 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # WORKER node:internal/async_hooks:202 node:internal/worker:186 file:///home/runner/work/official-graphql/official-graphql/graphql/node_modules/tinypool/dist/esm/index.js:500 file:///home/runner/work/official-graphql/official-graphql/graphql/node_modules/tinypool/dist/esm/index.js:485 file:///home/runner/work/official-graphql/official-graphql/graphql/node_modules/tinypool/dist/esm/index.js:642 file:///home/runner/work/official-graphql/official-graphql/graphql/node_modules/tinypool/dist/esm/index.js:251 file:///home/runner/work/official-graphql/official-graphql/graphql/node_modules/tinypool/dist/esm/index.js:521 file:///home/runner/work/official-graphql/official-graphql/graphql/node_modules/tinypool/dist/esm/index.js:395 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 close timed out after 1000ms ```
Edit: Added vitest hanging-process reporter. It took 9 manual re-runs and then timed out on the last one. Here is the output
@fitztrev I think this is not something Vitest can do here? You have hanging process:
/home/runner/work/chess-fetcher/chess-fetcher/node_modules/on-finished/index.js:224 - res = new asyncHooks.AsyncResource(fn.name || 'bound-anonymous-fn')
Which is not started by Vitest.
I'm seeing a similar situation to @4dams, @capaj and @unbiased-dev for a single one of my workspaces, which consistently has this problem; all others work fine, every time.
hanging-process
reporter``` There are 432 handle(s) keeping the process running # FILEHANDLE node:internal/async_hooks:202 # Tinypool node:internal/async_hooks:202 node:internal/async_hooks:505 $PATH_TO_PROJECT/node_modules/tinypool/dist/esm/index.js:36 $PATH_TO_PROJECT/node_modules/tinypool/dist/esm/index.js:57 $PATH_TO_PROJECT/node_modules/tinypool/dist/esm/index.js:734 $PATH_TO_PROJECT/node_modules/vitest/dist/chunk-snapshot-manager.1a2dbf96.js:7328 $PATH_TO_PROJECT/node_modules/vitest/dist/chunk-snapshot-manager.1a2dbf96.js:10628 $PATH_TO_PROJECT/node_modules/vitest/dist/chunk-snapshot-manager.1a2dbf96.js:10643 # WORKER node:internal/async_hooks:202 node:internal/worker:189 $PATH_TO_PROJECT/node_modules/tinypool/dist/esm/index.js:500 $PATH_TO_PROJECT/node_modules/tinypool/dist/esm/index.js:485 $PATH_TO_PROJECT/node_modules/tinypool/dist/esm/index.js:475 $PATH_TO_PROJECT/node_modules/tinypool/dist/esm/index.js:739 $PATH_TO_PROJECT/node_modules/vitest/dist/chunk-snapshot-manager.1a2dbf96.js:7328 $PATH_TO_PROJECT/node_modules/vitest/dist/chunk-snapshot-manager.1a2dbf96.js:10628 $PATH_TO_PROJECT/node_modules/vitest/dist/chunk-snapshot-manager.1a2dbf96.js:10643 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 # FILEHANDLE node:internal/async_hooks:202 close timed out after 1000ms ```
From what I can tell, there are no references to anything within my own tests in here.
What's interesting is that, of all of the workspaces that I am using Vitest on, there are a few unique things about the one that keeps having these troubles
hanging-process
reporter, which does not reference that library or the files it might have been keeping open at allIn our situation, the issue around a process preventing Vitest from exiting does not happen consistently; it seemed to mostly go away around the 0.26
release but has returned since upgrading to 0.27
(which I did specifically so we could access the reporter to determine exactly what is going wrong).
I do have another Vitest project using snapshot testing, but it's on a much older version of Vitest (0.21.1
).
Edit: Unfortunately, disabling the use of snapshots in my test suite was not the answer I was hoping it might be... even without that, I still got the timeout error and the snapshot manager is still referenced as one of the things running at the point that the tests time out.
Edit 2: I also disabled the tests that interact with the filesystem, which I've long thought is the cause of these time-outs. Unfortunately, that's not it either -- even with all of those tests disabled, I still see the timeouts.
Edit 3: Following the suggestion from @vidarc, I replaced c8
with Istanbul as my coverage provider. I have not been able to reproduce it locally since then, after quite a few attempts.
If you use msw for mocking server responses, then that might be the issue: https://github.com/vercel/next.js/issues/37300
msw does not support Node 18 yet.
If this is your issue, installing cross-fetch might help.
We had updated 0.26.2 -> 0.27.2
to use hanging-process
reporter, but after that we have got consistent both CI and local hangs π
@emurano hmm... that's interesting. We are using msw
for mocking server responses in the one package that we have that has the hanging issue, but are using Node 16, not Node 18. Would msw
be a potential culprit in Node 16? Or just 18?
I added a --no-threads
in my json script area and works for me, like:
"test:coverage": "vitest run --coverage --watch false --no-threads",
I've realised that the issue comes with the using @nabla/vite-plugin-eslint. The quickest patch is to disable the plugin for tests.
/// <reference types="vitest" />
import eslintPlugin from "@nabla/vite-plugin-eslint";
import react from "@vitejs/plugin-react";
import { defineConfig } from "vitest/config";
export default defineConfig({
plugins: [
react(),
// disable eslint plugin for tests
// vitest issue: https://github.com/vitest-dev/vitest/issues/2008
process.env.NODE_ENV !== "test" && eslintPlugin(),
],
test: {
globals: true,
environment: "jsdom",
},
});
Interesting. We're using msw too in one spec. Sounds like that could be the culprit.
Hey everyone, sorry for the red herring. My issue wasn't msw, it was vite-plugin-mock
.
Once I stopped including this plugin while running tests, my problems disappeared.
export default defineConfig(({ command, mode }) => {
//....
plugins: [
react(),
// Don't include vite mock in prod or during tests
[...(mode !== 'test' ? [viteMockServe({
mockPath: 'mock-server',
localEnabled: command === 'serve' && mode !== 'test',
})] : [])],
If you use msw for mocking server responses, then that might be the issue: vercel/next.js#37300
msw does not support Node 18 yet.
If this is your issue, installing cross-fetch might help.
0.28.3 should address issues with the timeout. Please update and report if you have any issues. The fix is targeting Node 16.17 and higher.
We just updated all of our repositories using vitest
to version 0.28.3
and the issue still keeps appearing.
For context, we're running tests via GitHub Actions on ubuntu-latest
, Node 18.12.0
.
This issue is still happening on my end. We've added timeouts to tests but having to rerun tests because of a test runner issue is not great. This ate up all of my org's CI credits for the month.
@emurano hmm... that's interesting. We are using
msw
for mocking server responses in the one package that we have that has the hanging issue, but are using Node 16, not Node 18. Wouldmsw
be a potential culprit in Node 16? Or just 18?
@alexlafroscia
I have updated Vitest today (I had v. 0.24.5) and started getting errors on my test files where I use MSW
ERROR Error: Hook timed out in 10000ms. If this is a long-running test, pass a timeout value as the last argument or configure it globally with "hookTimeout".
After some tests, I saw that this started on v.025.0 I have node v16.16.0
Not sure it might help, but just tested v0.28.5
and it still has the issue.
Run command is vitest --run --coverage --reporter junit --outputFile.junit=junit-result.xml
Node version is node:18-alpine
Run in the GitLab runner.
Describe the bug
Started encountering our tests hanging with the message
close timed out after 1000ms
, a google search lead to this issue, tried everything in there with no success, for us is still hit or miss whether we get the error on not.We get the error on different machines and also CI.
Reproduction
https://stackblitz.com/edit/vitejs-vite-brwl54?file=package.json
System Info
Used Package Manager
npm
Validations