fix(http): schedule shared HTTP/WS servers on reactor - #8769
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (3)
Included review availability: Your plan provides up to 8 included reviews per hour; 1 remains after this review. 📝 WalkthroughWalkthroughHTTPS and HTTP connection loops now use ChangesHTTP server async scheduling
Estimated code review effort: 3 (Moderate) | ~25 minutes Merge Risk: ⚪ Minimal · up to The PR routes shared HTTP/HTTPS and WebSocket server work through the reactor and adds regression coverage for the shared-server flow. No actionable merge-blocking risk remains beyond normal checks and review. 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
…es, reactor HTTP scheduling (#8778) Lands #8765, #8767, #8768 and #8769. #8765 stops mysql2 prepared statements and pool transactions leaking state across requests: each SQL string and parameter vector lives in one owned request, a parameterless `query()` uses the text protocol, prepared statements are request-scoped, and registry-backed mutable connection references become serialized owned handles with safe close/release around in-flight work. #8767 admits arrays reached through one validated forwarding edge into version-stable indexed loops, canonicalizing the compiler-private local to the live array after the full header/fingerprint check. Per-iteration fingerprint guards are retained, so callback-driven growth or a GC still side-exits before the next effect, and invalid targets or longer chains fail closed to the generic loop. #8768 materializes ordinary parent prototypes. #8769 schedules HTTP and HTTPS accept loops through the reactor-owned async bridge, using the same path for Unix round-robin fd injection. Changelog fragments added for #8765, #8767 and #8769; none carried one or a skip-changelog label. No version bump. Co-authored-by: Ralph Küpper <ralph@skelpo.com>
|
Landed on Validated on the merged result: all 30 lint checkers, runtime 2674/0 at Added a |
Summary
The old blocking-FFI callback relied on an ambient Tokio context. Adding the ws native wrapper changed the link shape and could leave TcpListener::from_std without a reactor, aborting the process. Scheduling the listener future directly avoids that ambient-context dependency.
Fixes #8747
Testing
Summary by CodeRabbit
Bug Fixes
Tests