Make timeout configurable
- 主要语言
- TypeScript
- 星标
- 79.3k
- 派生
- 6.8k
- 平均合并
- 2 天 6 小时
- 30 天内合并 PR
- 41
描述
**Edit**: Summary of timeouts to make configurable:
- [ ] Inner process spawn
- [ ] Web socket
Original issue:
----
### Is there an existing issue for this?
- [X] I have searched the existing issues
### OS/Web Information
- Web Browser: Chrome
- Local OS: Windows 10
- Remote OS: Ubuntu 22
- Remote Architecture: x86_64
- `code-server --version`:
4.14.1 5c199629305a0b935b4388b7db549f77eae82b5a with Code 1.79.2
### Steps to Reproduce
1. Install the code-server version above, and launch it using this command: `/usr/lib/rstudio-server/bin/code-server/bin/code-server --verbose --host=0.0.0.0 --port=40400 --disable-getting-started-override --disable-update-check --disable-telemetry`
### Expected
code server should start as expected on port 40400
### Actual
The following error messages are spawned:
[2024-07-24T15:47:42.792Z] debug parent:3106566 spawned child process 3107105
[2024-07-24T15:47:52.794Z] error timed out
[2024-07-24T15:47:52.795Z] debug parent:3106566 disposing [38;2;140;140;140m{}[0m
Included a strace of the startup:
[108342_2024-08-05-14_18_30_24Jul24Codeserver.log](https://github.com/user-attachments/files/16531129/108342_2024-08-05-14_18_30_24Jul24Codeserver.log)
### Logs
_No response_
### Screenshot/Video
_No response_
### Does this bug reproduce in native VS Code?
This cannot be tested in native VS Code
### Does this bug reproduce in GitHub Codespaces?
This cannot be tested in GitHub Codespaces
### Are you accessing code-server over a secure context?
- [X] I am using a secure context.
### Notes
This was previously working, and the only time-related change that I've been able to identify is a restriction on outbound traffic for most URLs. The only clue I have at the moment is that the way outbound traffic has been blocked doesn't immediately show as connection blocked/no route to host. `curl` commands to blocked addresses get stuck at `Trying` and essentially never time out. I've used code-server in a completely offline context, but I'm wondering if there's some unexpected bug or error happening because some outbound connectivity test being executed by a child process just never returns.
贡献指南
调研方向
首先重现报告中的启动命令,并跟踪内部进程 spawn 和 WebSocket 的 timeout 处理,这两个区域已在摘要中列出。完成的标准是两个 timeout 都可配置,并且启动场景不会仅仅因为默认 timeout 不合适而被终止。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- typescript
- 领域
- backend
- Issue 类型
- 功能
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 冷清
- 描述清晰度
- 需要澄清
- 新手友好度
- 42/100