Skip to content

quic: preserve session stats after close#64489

Open
manNomi wants to merge 1 commit into
nodejs:mainfrom
manNomi:quic-preserve-session-stats-after-close
Open

quic: preserve session stats after close#64489
manNomi wants to merge 1 commit into
nodejs:mainfrom
manNomi:quic-preserve-session-stats-after-close

Conversation

@manNomi

@manNomi manNomi commented Jul 14, 2026

Copy link
Copy Markdown

Description

QuicSessionStats[kFinishClose]() used IDX_STATS_STREAM_COUNT when
snapshotting session statistics. Since stream stats contain fewer entries
than session stats, fields beginning with cwnd were omitted after a session
was destroyed and returned undefined.

Use IDX_STATS_SESSION_COUNT so the complete session stats slice is copied
before the native session releases its arena slot. Add regression assertions
for the first previously omitted field (cwnd) and the final session field
(streamsIdleTimedOut).

Signed-off-by: manNomi <hanmw110@naver.com>
@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

Review requested:

  • @nodejs/quic

@nodejs-github-bot nodejs-github-bot added needs-ci PRs that need a full CI run. quic Issues and PRs related to the QUIC implementation / HTTP/3. labels Jul 14, 2026
@pimterry pimterry added the request-ci Add this label to start a Jenkins CI on a PR. label Jul 14, 2026
@github-actions github-actions Bot removed the request-ci Add this label to start a Jenkins CI on a PR. label Jul 14, 2026
@codecov

codecov Bot commented Jul 14, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 90.25%. Comparing base (ed63b19) to head (7a25eb7).
⚠️ Report is 7 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main   #64489      +/-   ##
==========================================
- Coverage   92.01%   90.25%   -1.77%     
==========================================
  Files         381      741     +360     
  Lines      170167   241688   +71521     
  Branches    26075    45549   +19474     
==========================================
+ Hits       156585   218139   +61554     
- Misses      13291    15102    +1811     
- Partials      291     8447    +8156     
Files with missing lines Coverage Δ
lib/internal/quic/stats.js 100.00% <100.00%> (ø)

... and 486 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@bjohansebas bjohansebas left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs-ci PRs that need a full CI run. quic Issues and PRs related to the QUIC implementation / HTTP/3.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants