velbus / velbus-tcp-snap

Snap package for python-velbustcp
5 stars 1 forks source link

{Buffer Full} resources used #7

Open MDAR opened 3 years ago

MDAR commented 3 years ago

Hi

I am seeing this a lot in the log, is it the Velbus VMBRSUSB buffer that is full, or the software buffer?

snap logs velbus-tcp -f
2021-08-25T14:19:45Z velbus-tcp.velbus-tcp[19899]: 2021-08-25 15:19:45,058 - WARNING - bridge - Buffer full on TCP receive.
2021-08-25T14:19:45Z velbus-tcp.velbus-tcp[19899]: 2021-08-25 15:19:45,104 - WARNING - bridge - Buffer full on TCP receive.
2021-08-25T14:19:45Z velbus-tcp.velbus-tcp[19899]: 2021-08-25 15:19:45,142 - WARNING - bridge - Buffer full on TCP receive.
2021-08-25T14:19:45Z velbus-tcp.velbus-tcp[19899]: 2021-08-25 15:19:45,162 - WARNING - bridge - Buffer full on TCP receive.
2021-08-25T14:19:45Z velbus-tcp.velbus-tcp[19899]: 2021-08-25 15:19:45,199 - WARNING - bridge - Buffer full on TCP receive.
2021-08-25T14:19:45Z velbus-tcp.velbus-tcp[19899]: 2021-08-25 15:19:45,202 - WARNING - bridge - Buffer full on TCP receive.
2021-08-25T14:19:45Z velbus-tcp.velbus-tcp[19899]: 2021-08-25 15:19:45,249 - WARNING - bridge - Buffer full on TCP receive.
2021-08-25T14:19:45Z velbus-tcp.velbus-tcp[19899]: 2021-08-25 15:19:45,268 - WARNING - bridge - Buffer full on TCP receive.
2021-08-25T14:19:45Z velbus-tcp.velbus-tcp[19899]: 2021-08-25 15:19:45,312 - WARNING - bridge - Buffer full on TCP receive.
2021-08-25T14:19:45Z velbus-tcp.velbus-tcp[19899]: 2021-08-25 15:19:45,363 - WARNING - bridge - Buffer full on TCP receive.

If it is the software buffer, is there any way to increase the size of the buffer?

dukeofphilberg commented 3 years ago

It's a software buffer of 4096 bytes and currently there's no way to increase the size. Every TCP packet sent after getting this buffer full will not be sent to the USB afterwards.

For now, if you want to get rid of these logs you'll need to send less data at once.

MDAR commented 3 years ago

Thanks Philip

That explains a lot.

One tiny detail, there was only VelbusLink connected and aggressively sending data. That model currently doesn't have anything else connected to it. (Other than the Control4 developer, but he wasn't connected at the time)