inhindsight / hindsight

Apache License 2.0
12 stars 8 forks source link

Receive Drops Messages in Finite Streams #190

Open ManApart opened 4 years ago

ManApart commented 4 years ago

In a finite streaming dataset, Receive drops the last x UDP messages. It seems likely that it's batching messages and waits infinitely to fill up the last batch.

AC

Tech Notes

jeffgrunewald commented 4 years ago

Is the receive websocket being disconnected at the “end” of the finite stream? Receives all already have a timeout like this and it defaults to 1sec.

ManApart commented 4 years ago

Updated for clarity. We saw this tail drop on UDP messages, not websockets. See notes for more info. It may not be a timeout/batching thing, but it is consistently dropping messages on the tail of the dataset.

jeffgrunewald commented 4 years ago

I would still focus debugging on the shutdown of the process; UDP also has a built in timeout and there's a test that has been consistently passing for months that verifies that an incomplete batch is sent if the timeout is reached.