Make sysbox grpc timeouts configurable ...
@ctalledo is already working on this.
Since Aug 30, 2022.
- Dominant language
- Shell
- Stars
- 3.9k
- Forks
- 230
- Avg merge
- 7h 48m
- Merged PRs (30d)
- 3
Description
Sysbox-runc communicates with sysbox-fs and sysbox-mgr via gRPC. That channel has a timeout limit of ~40 secs, which is normally more than sufficient (since containers typically start within 1->3 secs).
However, in some cases sysbox-mgr needs to perform operations that take a long time (many secs) causing the timeout to hit.
One such case occurs when mounting a host volume/directory into the sysbox container's /var/lib/docker dir; In this case sysbox-mgr needs to chown the contents of that host volume/directory, and that operation can take a long time if many files (hundreds of thousands) reside within that directory. In this case sysbox-runc will hit the timeout an emit an error such as:
failed to request mount source preps from sysbox-mgr: failed to invoke PrepMounts via grpc: rpc error: code = DeadlineExceeded desc = context deadline exceeded"
Some users have asked that the gRPC timeout be configurable to avoid this error, even if it means waiting a long time for the container to start.
This issue calls for Sysbox to make this configurable, via a sysbox-mgr command line flag, and possibly with override via a container env variable.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.