2 whole minutes to restart 1 server with 19 people, with 3 survivors of this failed restart, everyone else left because they didn’t get teleported
Expected behavior
No more than 10 seconds to get players in a new server.
Expected behavior
No more than 10 seconds to get players in a new server.
Seems like they made soft shutdowns irrelevant. ![]()
I’ve used soft shutdown scripts and have had decent luck. Perhaps try that?
Thanks for filing a bug report. Is it consistently taking 2 minutes to restart one server? If so, the most likely answer is that you have a hanging BindToClose callback that is preventing the server from shutting down
Well it happens randomly and I shouldn’t have something like that. Most are successes, some turn out like this. Also a bind to close shouldn’t prevent players from teleporting, they should move to a new server as soon as it’s created
Most are successes, some turn out like this
The example you screenshotted is too old for me to check logs. Can you post back here next time it happens so we can look at logs? Thanks
Also a bind to close shouldn’t prevent players from teleporting, they should move to a new server as soon as it’s created
The purpose of BindToClose is for you to run whatever code you need to do before players leave the server. For example, saving data about the player wouldn’t work if they’ve already been teleported away. BindToClose is entirely in your control - if you don’t have any callbacks then players will be teleported away the moment a server is created, just as your desired behavior
I shouldn’t have something like that
I’d encourage you to double check and confirm you’re not using BindToClose anywhere
Yeah
Players can leave the server and join a new one no matter the bind to close, when it takes more than 2 minutes it doesn’t solve anything. Also I don’t think i have a bind to close anyway that’s responsible otherwise it’d happen every single time.
Well if I was and it was the cause wouldn’t that happen every single time?
Players can leave the server and join a new one no matter the bind to close, when it takes more than 2 minutes it doesn’t solve anything.
Two minutes is the timeout to execute whatever code a dev chooses to put in it. Again, devs are in total control of what’s happening here
Well if I was and it was the cause wouldn’t that happen every single time?
In the case I linked above the hang depended on a race condition in the dev’s BindToClose callback, so it’s possible it doesn’t happen every time. Anyways, if we can look at logs next time we’ll be able to see if the hang is a BindToClose callback or not
Sure the server should stay up the players shouldn’t remain there for more than 10 seconds
Alrighty
Same issue happened to me when trying to restart servers in my testing place, this never happened prior to when Restart Servers was moved to creator hub, and my BindToClose callbacks haven’t changed since then (at least i think so)
Actually I have 4 BindToClose callbacks:
Re-tried with alt account in-game. This time, my main account was kicked instantly with the same error message and my alt account was disconnected a few seconds later:
Overall the restart doesn’t seem to work
Place IDs where you saw these happen? Thanks
All of the restarts were done inside my private testing place (18209252868)
I’m worried as I have an update scheduled for Sunday, and if the restart isn’t done properly it could be pretty bad
@CcXxiiHuman_C4t Thanks. There’s a known issue where the auto-reconnect doesn’t work on private testing Places that we’re looking into. If you see the issue persist after you publish publicly, please let us know
@royee354 we’re looking into the example you posted
@royee354 I looked at logs for one of the hanging servers from your 10:32 AM (Pacific Time) update. As suspected, there is a hanging BindToClose callback. Since it sounds like you’re not expecting BindToClose to be in your experience, you should find where it’s coming from and remove it. If, on the other hand, you do need that callback (but it doesn’t rely on players still being in the game), you can teleport them yourself before doing anything else that’s in the callback. Hope this helps!
@royee354 in case it helps in your search, I can see from some telemetry that you have six BindToClose callbacks being triggered. I’m not able to see which of them is causing the hang
I’ve just checked the crash logs and there are a lot of instances where the server is closed with “Unknown” or “RobloxMaintenance” with 1 or 0 players? This is awkward and maybe BindToClose somehow fails to report the correct value, “ServerEmpty”
(yes i did forget to timestamp the logs)
So I can teleport the players in a bindtoclose to the new servers before the server is closed manually? Wouldn’t it have a chance to put them in a closed server
You don’t have to worry about that. The first step of restarting servers is stopping matchmaking to existing servers. Once BindToClose fires any teleports are guaranteed to not go to an outdated server