This issue still occurs where the entire server will crash if you select “LuaHeap” in the Developer Console and create a snapshot for the server. Players are kicked from the game and are not able to rejoin.
This also happens in a fresh private server, so it only works in Studio. If this is intentional, the feature should be removed from live servers or have some sort of popup warning so developers don’t accidentally crash their servers trying to use the feature.
This also crashes my entire Studio trying to use it.
Debugging memory in studio isn’t a viable option.
In 99% of cases memory leaks are only noticeable in long-running servers. In a game there’s hundreds of systems working together. It’s guesswork to find which script is causing the leak.
The frustrating thing is that it works perfectly fine for servers with low memory. Starts breaking for 3-4gb+ or so server memory. This mostly defeats the use of the feature for debugging memory leaks.
I don’t know anything about the inner workings of Roblox servers, but to me personally it doesn’t make sense why the server would become unresponsive (even crash) when taking a memory snapshot. Seems like a major design flaw…
We have added more telemetry to catch and look into cases where the operation takes too long.
While most of the requests are under a few seconds, we got 4 examples of >20s captures and will be focusing at specific parts that have to be improved.
I’m ok with trading off some accuracy for not crashing the server. I want to run on a long running server to identify memory leaks. Memory won’t change a lot while running over 1 minute.
I can now run it on fresh servers without the server crashing. However, when using it on a live server that has been running for a while (the primary use case for this feature), it still crashes.