|
|
DescriptionLog an error in RtpDemuxer::FindSsrcAssociations() if kMaxProcessedSsrcs exceeded
BUG=None
Review-Url: https://codereview.webrtc.org/2941513002
Cr-Commit-Position: refs/heads/master@{#18569}
Committed: https://chromium.googlesource.com/external/webrtc/+/dea075c7a6bee96f319192f7beca03ef76fc0500
Patch Set 1 #
Total comments: 4
Patch Set 2 : . #Patch Set 3 : . #Patch Set 4 : . #
Messages
Total messages: 25 (10 generated)
eladalon@webrtc.org changed reviewers: + danilchap@webrtc.org, nisse@webrtc.org
PTAL
https://codereview.webrtc.org/2941513002/diff/1/webrtc/call/rtp_demuxer.cc File webrtc/call/rtp_demuxer.cc (right): https://codereview.webrtc.org/2941513002/diff/1/webrtc/call/rtp_demuxer.cc#ne... webrtc/call/rtp_demuxer.cc:123: LOG(LS_WARNING) << "More than kMaxProcessedSsrcs different SSRCs seen."; if you have to log it, then likely you want to log it only once. consider adding a variable to ensure you do not spam log file.
https://codereview.webrtc.org/2941513002/diff/1/webrtc/call/rtp_demuxer.cc File webrtc/call/rtp_demuxer.cc (right): https://codereview.webrtc.org/2941513002/diff/1/webrtc/call/rtp_demuxer.cc#ne... webrtc/call/rtp_demuxer.cc:123: LOG(LS_WARNING) << "More than kMaxProcessedSsrcs different SSRCs seen."; log value of the kMaxProcessedSsrcs: "More than " << kMaxProcessedSsrcs << " different"
https://codereview.webrtc.org/2941513002/diff/1/webrtc/call/rtp_demuxer.cc File webrtc/call/rtp_demuxer.cc (right): https://codereview.webrtc.org/2941513002/diff/1/webrtc/call/rtp_demuxer.cc#ne... webrtc/call/rtp_demuxer.cc:90: FindSsrcAssociations(packet); Unrelated to this cl, but I wonder if it's really necessary to do this first? I would have imagined that we could first lookup the ssrc in the |sinks_| multimap, and only if the returned |it_range| is empty, attempt to process the rsid. If we can get away with that, we don't need the |processed_ssrcs| mapping at all. Is there any valid use case where it's possible that |it_range| is non-empty but the ssrc isn't present in the |processed_ssrcs_| map?
lgtm
https://codereview.webrtc.org/2941513002/diff/1/webrtc/call/rtp_demuxer.cc File webrtc/call/rtp_demuxer.cc (right): https://codereview.webrtc.org/2941513002/diff/1/webrtc/call/rtp_demuxer.cc#ne... webrtc/call/rtp_demuxer.cc:90: FindSsrcAssociations(packet); On 2017/06/13 13:09:26, nisse-webrtc wrote: > Unrelated to this cl, but I wonder if it's really necessary to do this first? > > I would have imagined that we could first lookup the ssrc in the |sinks_| > multimap, and only if the returned |it_range| is empty, attempt to process the > rsid. If we can get away with that, we don't need the |processed_ssrcs| mapping > at all. > > Is there any valid use case where it's possible that |it_range| is non-empty but > the ssrc isn't present in the |processed_ssrcs_| map? Yes. It could be that sink A is associated with SSRC 1, and sink B is associated with with RSID "ELAD". If we now get an RTP message that has (SSRC=1, RSID=ELAD), we don't want to avoid finding out sink B's association.
The CQ bit was checked by eladalon@webrtc.org
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.webrtc.org/...
The CQ bit was unchecked by commit-bot@chromium.org
Try jobs failed on following builders: presubmit on master.tryserver.webrtc (JOB_FAILED, http://build.chromium.org/p/tryserver.webrtc/builders/presubmit/builds/18110)
On 2017/06/13 13:19:12, eladalon wrote: > Yes. It could be that sink A is associated with SSRC 1, and sink B is associated > with with RSID "ELAD". If we now get an RTP message that has (SSRC=1, > RSID=ELAD), we don't want to avoid finding out sink B's association. My question is: Is there any valid usecase where that state can happen occur? Registering multiple sinks for the same ssrc is something we only do for flexfec. And I don't know how we deal (or should deal) with rsid in flexfec. Would the SDP configure a media stream identified by rsid (unknown ssrc), and at the same time, configure a flexfec stream protecting that media stream, using an explicitly configured ssrc? Anyway, lgtm for this logging change. But it would be a lot nicer if we could get rid of the extra state.
The CQ bit was checked by eladalon@webrtc.org
The patchset sent to the CQ was uploaded after l-g-t-m from nisse@webrtc.org, danilchap@webrtc.org Link to the patchset: https://codereview.webrtc.org/2941513002/#ps60001 (title: ".")
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.webrtc.org/...
The CQ bit was unchecked by commit-bot@chromium.org
Try jobs failed on following builders: presubmit on master.tryserver.webrtc (JOB_FAILED, http://build.chromium.org/p/tryserver.webrtc/builders/presubmit/builds/18113)
eladalon@webrtc.org changed reviewers: + stefan@webrtc.org
Owner added.
Rubberstamp lgtm
The CQ bit was checked by eladalon@webrtc.org
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.webrtc.org/...
CQ is committing da patch. Bot data: {"patchset_id": 60001, "attempt_start_ts": 1497365589764250, "parent_rev": "7ed35f46433e6da91e7843eab20bad92a8f2b145", "commit_rev": "dea075c7a6bee96f319192f7beca03ef76fc0500"}
Message was sent while issue was closed.
Description was changed from ========== Log an error in RtpDemuxer::FindSsrcAssociations() if kMaxProcessedSsrcs exceeded BUG=None ========== to ========== Log an error in RtpDemuxer::FindSsrcAssociations() if kMaxProcessedSsrcs exceeded BUG=None Review-Url: https://codereview.webrtc.org/2941513002 Cr-Commit-Position: refs/heads/master@{#18569} Committed: https://chromium.googlesource.com/external/webrtc/+/dea075c7a6bee96f319192f7b... ==========
Message was sent while issue was closed.
Committed patchset #4 (id:60001) as https://chromium.googlesource.com/external/webrtc/+/dea075c7a6bee96f319192f7b... |