Skip to content

fix: compute bitrates over report times, report stats handler errors - #449

Merged
devopvoid merged 1 commit into
mainfrom
fix/stats-report-time
Oct 26, 2026
Merged

devopvoid merged 1 commit into
mainfrom
fix/stats-report-time

Conversation

@devopvoid

Copy link
Copy Markdown
Owner

Bitrates used the time a report was read instead of measured, so reports delayed on a busy control executor gave rates far too high. They now use the report timestamp: a cached report repeats its bitrates, a clock that went back or a counter that started again gives -1. PeerStats.timestamp() is the report time.

A throwing onStats handler now reaches the error handler, and later samples still arrive.

Bitrates used the time a report was read rather than measured, so reports delayed on a busy control executor gave rates far too high. They now use the report timestamp, repeat the bitrates of a cached report, and give -1 after the clock went back or a counter started again. PeerStats.timestamp() is the report time. A throwing onStats handler now reaches the error handler.
@devopvoid
devopvoid merged commit b6c8abc into main Oct 26, 2026
23 of 25 checks passed
@devopvoid
devopvoid deleted the fix/stats-report-time branch October 26, 2026 07:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant