-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
bun run build fails to complete #11331
Comments
i pulled the pidfd patch and i reproduced the issue. It hangs before it started the build steps to
From the debug logs, the runsc seems to be stuck at
The same behavior can also be seen at |
wow, I can actually finish the build w/o the pidfd patch
The pidfd syscall is not a blocker as it can tell from the debug logs
Unsupported syscall pidfd_open |
i would recommend to use a newer version of runsc and give it try again. what i have done differently is that i used the runsc i built from HEAD |
@milantracy thanks for looking into this! Are you able to finish the build consistently? I'm running the latest version of |
I have not seen any inconsistent behavior, I run the bun build 10 times in a row, it works for me,
and my kernel version is
and runsc version is
my runtime config at /etc/docker/daemon.json is
|
Hm, this is tricky. My local setup looks the same. I've reran these steps from scratch, and unfortunately am still seeing the hang:
My runtime config at
I've rerun these steps from scratch on a fresh instance, and I still reliably observe a hang at the step |
Could you upload the debug log files generated in Please use the runtime |
Description
bun run build
fails to complete in gVisor withNext.js
version14.2.20
.There are already some known incompatibilities with Bun and gVisor. For example, Bun implements a workaround for the missing pidfd API in gVisor (#5839). To try to address this incompatibility, I've partially implemented the api here: master...azliu0:gvisor:azliu/pidfd_open. This patch implements
pidfd_open
, which is the only syscall in the pidfd api used by bun; see here.Unfortunately, even with this patch, the reproduction script below still fails, which leads me to believe that something else may be going on. I can't be sure that this is only a gVisor issue, so I've also opened oven-sh/bun#16063. The reproduction script works with
runc
so it seems likely there's still something wrong with gVisor.cc @pawalt
Steps to reproduce
Dockerfile:
Then build the image and run with
runsc
.Expected behavior:
bun run build
finishes relatively quickly.Observed behavior:
bun run build
hangs at the stepGenerating static pages (21/21)
.On the patched version that implements
pidfd_open
, I also observebun run build
hanging after a certain point, but the output looks different. A caveat is that the implementation in this patch may be incorrect, but it at least passes the tests intest/syscalls/linux/pidfd.cc
.I observe the expected behavior with
runc
.runsc version
docker version (if using docker)
uname
Linux ip-172-31-75-24 6.8.0-1018-aws #20-Ubuntu SMP Thu Oct 10 18:14:42 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
kubectl (if using Kubernetes)
repo state (if built from source)
N/A
runsc debug logs (if available)
The text was updated successfully, but these errors were encountered: