Mir

Comment 1 for bug 1188451

Revision history for this message
Alan Griffiths (alan-griffiths) wrote :

This is a problem with the way we use sockets - basically both ends will wait indefinitely for input without detecting the far end has disappeared. So the server is just assuming that the client isn't updating its surface.

There are several possibilities:

  1. configuring the socket for keepalive - when we should get a signal after the client exits.
  2. adding a "heartbeat" to the protocol so we can detect the client dying.
  3. treating next_buffer as a heartbeat and dropping clients that don't post updates.

(I think 3 is wrong.)

We can see related problems client side if the server dies.