Opened 8 years ago

Last modified 4 years ago

#3643 reopened defect

Server NetTurnManager crash when a client cancels a rejoin and rejoins again — at Initial Version

Reported by: elexis Owned by:
Priority: Should Have Milestone: Backlog
Component: Network Keywords:
Cc: Patch:

Description

Today a game on r17298 crashed after I late-joined a game as spectator, cancelled the rejoin by killing the process and then rejoining again or something similar. I could reproduce the issue at least once.

NetTurnManager.cpp(586): Assertion failed: "turn == m_ClientsReady[client] + 1"
Assertion failed: "turn == m_ClientsReady[client] + 1"
Location: NetTurnManager.cpp:586 (NotifyFinishedClientCommands)

Call stack:

(0x96d68b) ./pyrogenesis() [0x96d68b]
(0x915861) ./pyrogenesis() [0x915861]
(0x9170ca) ./pyrogenesis() [0x9170ca]
(0x4552e9) ./pyrogenesis() [0x4552e9]
(0x46f927) ./pyrogenesis() [0x46f927]
(0x461362) ./pyrogenesis() [0x461362]
(0x46ca3f) ./pyrogenesis() [0x46ca3f]
(0x47334e) ./pyrogenesis() [0x47334e]
(0x47399d) ./pyrogenesis() [0x47399d]
(0x473a7d) ./pyrogenesis() [0x473a7d]
(0x7f978d0f96aa) /lib/x86_64-linux-gnu/libpthread.so.0(+0x76aa) [0x7f978d0f96aa]
(0x7f978ce2eeed) /lib/x86_64-linux-gnu/libc.so.6(clone+0x6d) [0x7f978ce2eeed]

errno = 0 (Try again later)
OS error = ?

Also this finite state machine error pops up on the server when cancelling the rejoin sometimes (but doesn't produce a crash):

ERROR: Net server: Error running FSM update (type=19 state=4)

MessageType 19 means NMT_SYNC_CHECK and server state 4 means means SERVER_STATE_INGAME.


Thanks to fatherbushido for sending the crashlog, allowing to understand the error!

Change History (0)

Note: See TracTickets for help on using tickets.