McJtyMods / RFTools

A set of blocks and items to help with RF in general. Currently contains a Dimension Builder, Teleportation System, Shield System, RF monitor, an RF network debug tool and an automatic crafter
MIT License
227 stars 88 forks source link

[1.12.2] builder with pump card causes massive server memory leak #2053

Open storm37000 opened 4 years ago

storm37000 commented 4 years ago

builder with pump card causes massive server memory leak while pumping infinite water sources. This isnt 100% certain to be this or just an issue with it constantly updating the water itself. But the leak did stop as soon as we switch to a mekanism pump.

MichaelHillcox commented 4 years ago

I would be supprised if it was a memory leak as this would be the first I'm seeing this issue be reported, do you have any logs to show how much memory was being taken up / do you know how much?

Any other information you can give? World, server player count, mod count, was the pump ranged to a large radius? where there any tick manipuation etc.

storm37000 commented 4 years ago

ill send this link to the players who were working on their base so they can answer it. Memory was rising at a very noticable rate while looking in task manager even while they werent on but their chunkloaders were active. It eventually hits max memory allocation and causes increasing lag until the VM crashes due to OOM.

ShadowzOfTheDark commented 4 years ago

Yeah, so basically it was a single chunk with two fully infused builders (with clearing pump cards) of which were sending their resources into an AE network (which was also of considerable size). This device was pretty simple, just consisting of a big reservoir of water inside a glass container. The builder was set to pump only the inside area (So water was still around the outside edge to fill the water that we took out). This as you imagined caused a lot of water sources to be taken out and replaced at a high rate. While playing though, there was no noticeable issues other than what storm already specified server side.

MichaelHillcox commented 4 years ago

So what brings you both to think this was a memory leak? from the sounds of things when something was removed it caused a lot of tick rate updates? where these continual? Memory leaks tend to be server side or client side but in a way that slowly builds up usage of memory because something not being removed after it's been used. Javas GC tends to do a good job and resolving these too so I'm trying to figure out what might have gone wrong here

MichaelHillcox commented 4 years ago

ill send this link to the players who were working on their base so they can answer it. Memory was rising at a very noticable rate while looking in task manager even while they werent on but their chunkloaders were active. It eventually hits max memory allocation and causes increasing lag until the VM crashes due to OOM.

There is a lot of things that could have caused this but maybe @McJty might have more insight into this.

storm37000 commented 4 years ago

I was watching the memory use rise, it eventually topped out at 9GB when normal memory use should be around 3.5-4GB and would crash soon after.