aravis icon indicating copy to clipboard operation
aravis copied to clipboard

Better documentation, error messages, defaults regarding the gige socket-buffer-size

Open dkogan opened this issue 1 year ago • 1 comments

These are the result of me encountering and debugging packet-dropping issues: https://github.com/AravisProject/aravis/issues/894

Primarily these patches add more error reporting and documentation. With the extended error messages I think it makes sense to change the default socket-buffer policy to ARV_GV_STREAM_SOCKET_BUFFER_AUTO, which this patch series does.

There's one more thing I would change also, but want to get your thoughts about all this first:

If setsockopt() returns success, but doesn't actually give us the requested buffer, we currently:

  • Report a arv_warning_interface()
  • arv_socket_set_recv_buffer_size() returns FALSE But the caller of arv_socket_set_recv_buffer_size() doesn't do anything with this FALSE, and things continue as normal. I would make this a hard error, and I'd change the arv_warning_interface() to something that would be seen even without any ARV_DEBUG flags.

Thanks much

dkogan avatar Apr 18 '24 18:04 dkogan

Hi,

Sorry for being late reviewing this merge request. Be patient, I will dedicate some time to aravis this summer.

EmmanuelP avatar Jun 16 '24 07:06 EmmanuelP

Hi,

I have created a new pull request with some editions to your work: #919

I will not change the default buffer size policy in the 0.8 stable series, but probably in the next development series.

As for the warning, I will not make it visible by default, as it is not a programming error. But I agree we should add an error placeholder to the set_recv_buffer function, and do something with it when an error is returned.

EmmanuelP avatar Aug 14 '24 09:08 EmmanuelP