The last few days I’m debugging my servers like crazy, because when they become older they receive a lot of latency.
I rewrote part of the networks twice, but it seems like the server is become clogged with jobs / etc…
What happens
When the server becomes older, the UntrackedMemory goes up, it also never comes down again… For some reason the server is busy with something, what I really don’t understand since it isn’t listed.
Where does it happen ? https://www.roblox.com/games/206640076/Roblox-Deathrun
(Reverted the place to a ‘version’ that is kinda OK… If you want a place file that has it way faster, let me know and I will give PM you the latest build that is currently on our Test Servers…)
What have I tried myself ?
Checked the code a few times, since it seems to happen when large instances are being destroyed (for example a map in a round). I use :destroy() on everything, so it should be GC, or it could be when players leave / enter the game (we do nothing weird with them, just your standard R6)
Check an other place slot
Check the Microprofiler for any helpful tips / pointers. (But this is only for the Client correct ?)
Repro
Sadly no repro at the moment
Any more information?
There seem to be users that have the same issue regarding UntrackedMemory.
This bug has been causing server crashes in a game I’m developing, along with a growing list of other games. I have created a simple repro place file here that allows you to see it for yourself. untrackedMemoryIssue.rbxl (22.4 KB)
Open this place and run a server
Start spawning instances until it reaches ~1000 instances
Stop the spawner and hit the “Clear” button to destroy them all
Watch as the UntrackedMemory jumps up beside the overall server memory
The server memory will never recover from the destroyed instances, even though they are not referenced anywhere.
(Below is an image of the memory after hitting the clear button)