-
Notifications
You must be signed in to change notification settings - Fork 428
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Allow clients to limit the number of times a playlist attempts to reload following an error #1098
Allow clients to limit the number of times a playlist attempts to reload following an error #1098
Conversation
Codecov Report
@@ Coverage Diff @@
## main #1098 +/- ##
==========================================
+ Coverage 86.41% 86.44% +0.02%
==========================================
Files 39 39
Lines 9465 9471 +6
Branches 2182 2183 +1
==========================================
+ Hits 8179 8187 +8
+ Misses 1286 1284 -2
Continue to review full report at Codecov.
|
…oad following an error
…oad following an error
4360dc0
to
67bb93c
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry it took us so long to review. There has been a ton on our plate internally.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Aside from the weird test whitespace, LGTM
The playback tests look a bit suspicious, they don't seem like the standard timeout issue we see. |
Co-authored-by: Gary Katsevman <[email protected]>
Co-authored-by: Gary Katsevman <[email protected]>
…ure_playlist_retry_count
Followup to #1098 where the default should've been Infinity, but it got lost in translation. Co-authored-by: Evan farina <[email protected]>
Description
Addresses the issue of unlimited retries mentioned in issue #983 by allowing clients to control how often a playlist will try to reload following an error. Thanks to @gkatsev for the suggestion of using the
playlist
object to keep track of number of retries.Specific Changes proposed
Introduce a new option
maxPlaylistRetries
which sets a limit on the number of times a playlist will be retried. Once the number of retries is greater than (>) the value set bymaxPlaylistRetries
,playlist.excludeUntil
is set toInfinity
.Note: A property
retryCount
is set and incremented onPlaylist
objects. I've found that playlist errors and segment errors follow different paths (playlistRequestError
andblacklistCurrentPlaylist
, respectfully) so I'm incrementing this property in each of these places. I'd appreciate it if a reviewer could confirm that no error will result in both of these methods being called as that would cause a single error to increment the retryCount twice.Requirements Checklist