[client-impl] Timeout and data consistency


I’m working towards the implementation of timeouts in my Haskell driver, in particular

operation-like timeout like when you’re issuing a WriteEvents command.

What I’m afraid of is, the client reports a write command has timed out while on

the sever side, the write request has been carried out successfully.

I know for a fact the C# client has timeout of this kind.

My question is, how do you handle timeouts in the situation described above ?

Thanks for your time.

This is why things are idempotent.

Hmm, I see

Do you mean because I will, in the worst case, re-send the same batch of events with the same GUUIDs,

it will not cause any harm ?

exactly a retry is a safe operation.

Thanks for the speedy answer !