improve HTTP server shutdown
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 38/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Stale
- Tech stack
- swift
- Domain
- backend, networking
Research direction
Start with the shutdown flow in Vapor/HTTPServer.swift, especially the log locations around lines 368-374, and trace how Boka.swift and Vapor/Application.swift trigger it. Check the available Vapor API for closing the WebSocket during shutdown; done means the HTTP server stops without the ten-second timeout error.
Written by the indexing model from the issue text.
Description
2024-10-29T17:35:01+1300 [ cli ] [ NOTICE ] Shutting down... (Boka/Boka.swift:184)
2024-10-29T17:35:01+1300 [ codes.vapor.application ] [ DEBUG ] Application shutting down (Vapor/Application.swift:264)
2024-10-29T17:35:01+1300 [ codes.vapor.application ] [ TRACE ] Shutting down providers (Vapor/Application.swift:266)
2024-10-29T17:35:01+1300 [ codes.vapor.application ] [ TRACE ] Clearing Application storage (Vapor/Application.swift:270)
2024-10-29T17:35:01+1300 [ codes.vapor.application ] [ DEBUG ] Requesting HTTP server shutdown (Vapor/HTTPServer.swift:368)
2024-10-29T17:35:11+1300 [ codes.vapor.application ] [ ERROR ] Could not stop HTTP server: Abort.500: Server stop took too long. (Vapor/HTTPServer.swift:372)
2024-10-29T17:35:11+1300 [ codes.vapor.application ] [ DEBUG ] HTTP server shutting down (Vapor/HTTPServer.swift:374)
2024-10-29T17:35:11+1300 [ codes.vapor.application ] [ TRACE ] Running on shared EventLoopGroup. Not shutting down EventLoopGroup. (Vapor/Application.swift:276)
2024-10-29T17:35:11+1300 [ codes.vapor.application ] [ TRACE ] Application shutdown complete (Vapor/Application.swift:287)
2024-10-29T17:35:11+1300 [ codes.vapor.application ] [ TRACE ] Application deinitialized, goodbye! (Vapor/Application.swift:321)
it shouldn't shutdown by timeout. need to use some Vapor API to close ws
- Dominant language
- Swift
- Stars
- 6
- Forks
- 0
- Avg merge
- 1d 4h
- Merged PRs (30d)
- 3
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
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.
More from open-web3-stack/boka
-
Difficulty 1/5 Under an hour Newbie friendliness 88/100
open-web3-stack/boka#399 ·
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
open-web3-stack/boka#386 ·
-
linux binary buildOpen
Difficulty 4/5 3-5 days Newbie friendliness 42/100
open-web3-stack/boka#354 ·
-
Difficulty 3/5 1-2 days Newbie friendliness 35/100
open-web3-stack/boka#347 ·
-
update msquic buildOpen
Difficulty 2/5 1-3 hours Newbie friendliness 25/100
open-web3-stack/boka#333 ·
All issues in open-web3-stack/boka
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
mozilla-mobile/firefox-ios#35996 ·
Maintainers usually reply within 1 day
-
fix: pre-push hook이 worktree에서 GIT_DIR을 상속해 SwiftPM 패키지 해석에 실패Possibly taken @zaehorang claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
-
Difficulty 2/5 Under an hour Newbie friendliness 85/100
pluk-inc/markdown-preview#493 ·
Maintainers usually reply within 1 day
-
Reading an empty file leaks a 4 KB buffer on Linux (Data(contentsOf:), String(contentsOfFile:))Open
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
swiftlang/swift-foundation#2304 ·
Maintainers usually reply within 1 day
-
area:caching bug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
axeslasher/Jelly-Shark#321 ·
Maintainers usually reply within 1 day