Add exponential NeedMediaData resend back-off on notification failure#471
Add exponential NeedMediaData resend back-off on notification failure#471smudri85 wants to merge 3 commits into
Conversation
Summary: Added backoff to scheduleNotifyNeedMediaData() timer creation at error. Type: Fix Test Plan: UT/CT, Fullstack Jira: RDKEMW-15485
|
Pull request must be merged with a description containing the required fields, Summary: If there is no jira releated to this change, please put 'Jira: NO-JIRA'. Description can be changed by editing the top comment on your pull request and making a new commit. |
There was a problem hiding this comment.
Pull request overview
Adds exponential back-off when rescheduling NeedMediaData notifications after a send failure, and ensures the back-off resets on success and on source lifecycle events (flush/remove), improving resilience and avoiding tight retry loops in failure scenarios.
Changes:
- Introduce per-
MediaSourceTyperesend delay back-off with exponential growth capped at a max, applied whennotifyNeedMediaDataInternal()fails. - Reset back-off on successful notification,
flush(), andremoveSource(). - Add/extend unit tests validating doubling behavior and reset behavior after success/flush/remove.
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
media/server/main/source/MediaPipelineServerInternal.cpp |
Implements back-off tracking and applies it to scheduleNotifyNeedMediaData; resets state on success/flush/remove. |
media/server/main/include/MediaPipelineServerInternal.h |
Declares back-off storage and helper methods. |
tests/unittests/media/server/main/mediaPipeline/HaveDataTest.cpp |
Adds UT for back-off doubling on failures and reset after success. |
tests/unittests/media/server/main/mediaPipeline/FlushTest.cpp |
Adds UT verifying flush resets the resend back-off. |
tests/unittests/media/server/main/mediaPipeline/SourceTest.cpp |
Adds UT verifying removeSource resets the resend back-off. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
Coverage statistics of your commit: |
|
Coverage statistics of your commit: |
Summary: Add exponential NeedMediaData resend back-off on notification failure.
Type: Feature
Test Plan: UT/CT, Fullstack
Jira: RDKEMW-15485