After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 769773 - multiudpsink: Randomly ceases to send to clients
multiudpsink: Randomly ceases to send to clients
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-good
git master
Other Linux
: Normal normal
: 1.8.3
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2016-08-11 23:04 UTC by GstBlub
Modified: 2016-08-16 13:50 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
multiudpsink: Initialize bytes_sent field. (863 bytes, patch)
2016-08-11 23:04 UTC, GstBlub
committed Details | Review

Description GstBlub 2016-08-11 23:04:25 UTC
Created attachment 333154 [details] [review]
multiudpsink: Initialize bytes_sent field.

Under higher packet rates I observed that clients randomly drop out and stop receiving any data.  This happens when writing to the socket starts failing (e.g. because the socket returns an recoverable error such as EWOULDBLOCK).  The problem is that the bytes_sent field is never initialized to 0 and g_socket_send_messages() only sets this field when it actually wrote data for this message.  The fact that bytes_sent may be any random value when it fails to send a message then confuses gst_udp_messsages_find_first_not_sent().
Comment 1 Sebastian Dröge (slomo) 2016-08-12 07:23:33 UTC
Attachment 333154 [details] pushed as 578e93c - multiudpsink: Initialize bytes_sent field.
Comment 2 GstBlub 2016-08-12 12:34:09 UTC
Bug #767811 might be related to this, not sure though.