Pure-Battlefield / gswat

The Pure Game Server Web Administration Tool
Other
2 stars 5 forks source link

GSWAT disconnects from server and does not reconnect #123

Closed wbbarr closed 11 years ago

wbbarr commented 11 years ago

Pulling logs from 3/19, last recorded message (before reconnect) was

[03/19/2013 03:45:33] [SERVER] Server: PURE BATTLEFIELD servers are run by the community, for the community. All players are welcome to wear the [PURE] tag!

However, there is still chat being sent on the server (as verified by Procon), and none of that chat is showing up in GSWAT (live stream or logs).

wbbarr commented 11 years ago

Upon further investigation, I found this in the logs:

At 7:55:47 AM EST (which lines up with the last received log being 3:45:33 AM UTC), there is an "An existing connection was forcibly closed by the remote host" event from Protocol in ReceivePackets. Apparently there was no reconnect (either that or the reconnect failed).

wbbarr commented 11 years ago

It looks like MessagePump.Abort() was killing the thread prematurely. The reconnection effort was occurring in the ReceivePacket thread (from the callback) which was calling Disconnect(), which in turn called MessagePump.Abort, which would end the reconnection effort by destroying the thread. A patch will be up shortly.

wbbarr commented 11 years ago

Closed as fixed.