crowbarmaster / BedrockManagementService

A multiple host, multiple server, Minecraft bedrock server management service and GUI manager.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Service no longer allows client connections

tiamat2012 opened this issue · comments

Hi,

I still seem to get into this state:

image

The service is running, and it's localhost on the standard 19134 port, but it doesn't connect. The service log contents are shown above. I used the client to test delete an old backup, closed the client cleanly, and then tried to connect again and it's timing out.

I have to restart the service to get the client to connect again. It only happens on some client activities (I think either the pack manager or the backup manager). Most of the time I can bring up the client, perform a one-off backup without stopping the world, and then close the client, and then do it again later with no issues. So its probably some unfinished transaction between the client and service that is causing the error, probably related to the pack manager.

I tried the latest release. Steps to recreate the problem:

1 start service
2 start client
3 connect client to server
4 click the X close in the upper to right of the window without clicking disconnect first
5 restart client
6 fails to connect to client

likely the service is holding the 19134 port open and does not realize the client is gone, and the new client is unable to connect

workaround: either leave the client running or disconnect before closing client

previously even if you disconnected before closing, it would not connect. So the changes you made did improve things, but did not completely resolve the issue.

Edit: I think I was seeing it happen more often because I would have the client connected and running and then sign out of my RDP session, which just closes the client.

Hello again! I will dive into bad disconnects a bit deeper then. I started focusing a bit on proper service/server shutdown and restarts, as well as refactoring things to be a bit more testable. Currently everything is manually tested, but I am starting to build tests to automate these lengthy steps. It wasn't all too possible beforehand, and just was ignored. Soon testing steps like this to prevent rolling back issues will be a reality.

This issue was fixed, but I accidentally uncovered a related issue, and will open it separately.