Opened 8 years ago

Last modified 3 years ago

#3700 closed defect

Finish-rejoin lag — at Initial Version

Reported by: elexis Owned by:
Priority: Must Have Milestone: Alpha 24
Component: Network Keywords: beta
Cc: andy011973@… Patch:

Description

Since a chat-message is displayed when a client has finished rejoining (#1949), one can easily observe a reoccuring, distinct type of lag ("finished-rejoin lag").

It happens whenever a game has been played for a while (much serialized data). The game appears to be frozen for 5 to 15 seconds.

Here is what happens:

  1. The client is starting to rejoin.
  2. The server sends the client a lot of serialized data.
  3. The client needs a significant time to deserialize it.
  4. Meanwhile the game has continued (i.e. new turns)
  5. In order to finish the rejoin, the client simulates the new turns while all other clients wait for him. This is the finish-rejoin lag.

With #3242 rejoins happen more often, so the problem accumulates more in that situation.


In order to solve or reduce the impact of the issue, the playing clients could progress one turn for every five turns that the rejoined client computes. Hence the rejoined client still catches up with the other clients, while those are still able to play.

For the time being, #3241 helps.

Change History (0)

Note: See TracTickets for help on using tickets.