Dear All,
I'm been spotting a serious issue we do have in production.
We are running in async mode with a fixed bandwidth and a fec 8x8
If the storage device gets lower than the network bandwith then after a while udpcast locks itself.
I've been enabling the debug and discovered that the free blocks is loosing 1 byte very often (surely links to the FEC).
Once the free blocks is set to 1 the process is totally locks.
Aside this bug, I found that udpcast sends more the same data several time while it got sent once. This is maybe related.
Any thoughts on this ?
Thanks,
17:01:26.073493 free blocks: got 4096 bytes 17:01:37.179820 free blocks: got 4095 bytes 17:01:37.180049 free blocks: got 4094 bytes 17:01:37.180210 free blocks: got 4093 bytes 17:01:37.180357 free blocks: got 4092 bytes 17:01:37.180502 free blocks: got 4091 bytes 17:01:37.180687 free blocks: got 4090 bytes 17:01:37.180834 free blocks: got 4089 bytes 17:01:37.180980 free blocks: got 4088 bytes [...] 17:02:04.364385 free blocks: got 12 bytes 17:02:04.364595 free blocks: got 11 bytes 17:02:04.364794 free blocks: got 10 bytes 17:02:04.365114 free blocks: got 9 bytes 17:02:04.365310 free blocks: got 8 bytes 17:02:04.365544 free blocks: got 7 bytes 17:02:04.365739 free blocks: got 6 bytes 17:02:04.365979 free blocks: got 5 bytes 17:02:04.366247 free blocks: got 4 bytes 17:02:04.366472 free blocks: got 3 bytes 17:02:04.366687 free blocks: got 2 bytes 17:02:04.572361 free blocks: got 1 bytes
In fact, we are receiving much more packets that we are able to process in the same time. This is leading to having not a single block free to get new packets and we get stuck in this position.
I don't find any test that avoid getting into this situation.
Shouldn't drop the incoming packets if we can store them inside the structure while processing the already received packets ? I'm working on this part but that's frankly hard to understand the code without any documentation and very very few comments inside the code.
Is there any public svn | git of this project ? Maybe you have some patches on this topic.
My 2cents, Erwan
2012/11/13 Erwan Velu erwanaliasr1@gmail.com
Dear All,
I'm been spotting a serious issue we do have in production.
We are running in async mode with a fixed bandwidth and a fec 8x8
If the storage device gets lower than the network bandwith then after a while udpcast locks itself.
I've been enabling the debug and discovered that the free blocks is loosing 1 byte very often (surely links to the FEC).
Once the free blocks is set to 1 the process is totally locks.
Aside this bug, I found that udpcast sends more the same data several time while it got sent once. This is maybe related.
Any thoughts on this ?
Thanks,
17:01:26.073493 free blocks: got 4096 bytes 17:01:37.179820 free blocks: got 4095 bytes 17:01:37.180049 free blocks: got 4094 bytes 17:01:37.180210 free blocks: got 4093 bytes 17:01:37.180357 free blocks: got 4092 bytes 17:01:37.180502 free blocks: got 4091 bytes 17:01:37.180687 free blocks: got 4090 bytes 17:01:37.180834 free blocks: got 4089 bytes 17:01:37.180980 free blocks: got 4088 bytes [...] 17:02:04.364385 free blocks: got 12 bytes 17:02:04.364595 free blocks: got 11 bytes 17:02:04.364794 free blocks: got 10 bytes 17:02:04.365114 free blocks: got 9 bytes 17:02:04.365310 free blocks: got 8 bytes 17:02:04.365544 free blocks: got 7 bytes 17:02:04.365739 free blocks: got 6 bytes 17:02:04.365979 free blocks: got 5 bytes 17:02:04.366247 free blocks: got 4 bytes 17:02:04.366472 free blocks: got 3 bytes 17:02:04.366687 free blocks: got 2 bytes 17:02:04.572361 free blocks: got 1 bytes