LLibrary

LLibrary

67M Downloads

Memory leak?

dahjin opened this issue ยท 24 comments

commented

I'm getting a memory leak from this mod i'm think in my 66 mod modpack. We're getting memory leaks over time and i get this from scanning the heapdump while the gc runs every 5 seconds or so.

"One instance of "net.ilexiconn.llibrary.server.util.WeakIdentityHashMap" loaded by "net.minecraft.launchwrapper.LaunchClassLoader @ 0x6c20b7680" occupies 458,240,176 (20.62%) bytes. The memory is accumulated in one instance of "java.util.HashMap$Node[]" loaded by "system class loader".

It takes up almost 440 megabytes in ram just on this specificially. The mod that requires LLibaray is "Ice and fire: Dragons in a whole new light!"

commented

Interesting, will take a look into this!

commented

Im not sure if there is anything more i can post that will be of help. Please let me know. C:

commented

Is there another high consumer of memory below this one that is Map, List, or Set from another mod?

commented

mvxgfo

commented

im going to take one when i launch the game to get some normal values too see if i jumped the gun.

commented

This one is 10 minutes into the game the other is usually 2 hours ish into being launched
eclipse_2018-05-18_15-06-58

commented

What I thought may be the problem doesn't appear to be the case, could you provide your pack?

commented

If it's a published modpack, the name is fine. Otherwise a mod list works perfect.

commented

explorer_2018-05-22_03-53-44
Okay mine is one i threw together for a few friends.

commented

The list of mods?

commented

I assume nothing is in the 1.12.2 directory?

commented

Ah sorry about that
explorer_2018-05-22_05-55-47

commented

Same thing again except now it's 2 gigabytes. :)
eclipse_2018-05-28_21-51-59

commented

Interesting. I'll experiment with this a bit.

commented

Adding to the report. We are experiencing this behaviour from this mod as well, however during troubleshooting we increased the server heap to 20GB and managed to get a clear picture that this WeakIdentityHashMap object is the culprit.

screenshot from 2018-06-01 07-41-03

The leak seems to be quite bad with the object accounting for 88.74% of the total heap. With a 20gb heap and 2-4 players online, we are reaching max heap in just 4 hours and being forced to restart.

I will be providing a copy of the dump output once I get it uploaded to a shared location.

commented

Attaching mod list. Ice and Fire is the strong suspect for causing the issue to be so prevalent on our instance as it uses LLibrary to track effects by Medusas on mobs.

AdvancedRocketry-1.12.2-1.4.0-77.jar
AppleSkin-mc1.12-1.0.9.jar
ArmorStandGUI-1.12-1.0.4.jar
Aroma1997Core-1.12.2-1.3.0.2.jar
Aroma1997s-Dimensional-World-1.12-1.3.0.0.b37.jar
AromaBackup-1.12.2-2.1.1.3.jar
AutoRegLib-1.3-16.jar
BackTools-1.12.2-7.0.0.jar
Baubles-1.12-1.5.2.jar
BedBugs-1.12-1.0.1.jar
BetterBuildersWands-1.12-0.11.1.245+69d0d70.jar
BetterFps-1.4.8.jar
BetterPlacement-1.0.0-1.jar
BiblioCraft[v2.4.3][MC1.12.0].jar
BiomesOPlenty-1.12.2-7.0.1.2361-universal.jar
Blur-1.0.4-14.jar
Bookshelf-1.12.2-2.3.541.jar
Botania r1.10-353.jar
BrandonsCore-1.12-2.4.0.152-universal.jar
CTM-MC1.12-0.2.3.12.jar
Cavern_1.12.2-v1.10.6.jar
Chameleon-1.12-4.1.3.jar
ChestTransporter-1.12.2-2.8.8.jar
ChickenChunks-1.12.2-2.4.1.71-universal.jar
Chisel-MC1.12.2-0.2.0.31.jar
Chunk+Pregenerator+V1.12-1.8.jar
ClaySoldiersMod-1.12.2-3.0.0-alpha.9.1.jar
Clumps-3.0.0.jar
CoFHCore-1.12.2-4.3.11.6-universal.jar
CoFHWorld-1.12.2-1.1.1.12-universal.jar
CodeChickenLib-1.12.2-3.1.6.339-universal.jar
Controlling-3.0.6.jar
CookingForBlockheads_1.12.2-6.3.26.jar
CraftTweaker2-1.12-4.1.6.jar
CyclopsCore-1.12.2-0.11.5.jar
DankNull-1.12-1.4.33.jar
DarkUtils-1.12.2-1.8.207.jar
Decocraft-2.6.0_1.12.2.jar
DiscordIntegration-mc1.12.2-3.0.5.jar
Draconic-Evolution-1.12-2.3.10.284-universal.jar
EconomyLite-7.1.0-2.14.3.jar
ElecCore-1.12.2-1.8.434.jar
EnderCore-1.12.2-0.5.22.jar
EnderIO-1.12.2-5.0.24.jar
EnderStorage-1.12.2-2.4.2.126-universal.jar
EnergeticSheep-1.12.2-1.1.2.jar
Exchangers-1.12.2-2.7.1.jar
ExtraCells-1.12.2-2.5.11a48.jar
FastLeafDecay-v14.jar
Forgelin-1.6.0.jar
GravityGun-1.12.2-7.0.1.jar
Guide-API-1.12-2.1.5-60.jar
HuntingDimension-1.12.2-1.0.24.jar
InGameInfoXML-1.12.2-2.8.2.94-universal.jar
InventoryTweaks-1.63.jar
IvToolkit-1.3.3-1.12.jar
JEHC-1.12.2-1.5.0.0.jar
JustEnoughResources-1.12.2-0.8.5.27.jar
KleeSlabs_1.12.2-5.4.8.jar
LibVulpes-1.12.2-0.2.8-29-universal.jar
LuckPerms-Sponge-4.1.7.jar
LunatriusCore-1.12.2-1.2.0.42-universal.jar
MTLib-3.0.4.jar
Mantle-1.12-1.3.2.24.jar
Mekanism-1.12.2-9.4.3.330.jar
MekanismGenerators-1.12.2-9.4.3.330.jar
MekanismTools-1.12.2-9.4.3.330.jar
MobGrindingUtils-0.3.6.jar
MooFluids-1.12.2-1.7.11.02a.jar
MouseTweaks-2.8-mc1.12.1.jar
Nations-2.9-S7.0-MC1.12.1-hotfix1.jar
NaturesCompass-1.12.2-1.5.1.jar
NuclearCraft-2.10j--1.12.2.jar
Nucleus-1.3.13-S7.0-MC1.12.2-plugin.jar
OpenBlocks-1.12.2-1.7.6.jar
OpenComputers-MC1.12.2-1.7.2.67.jar
OpenModsLib-1.12.2-0.11.5.jar
OreExcavation-1.4.118.jar
PTRLib-1.0.2.jar
Pam's HarvestCraft 1.12.2t.jar
Placebo-1.12.2-1.3.3.jar
Quark-r1.4-123.jar
ReAuth-3.5.2.jar
RebornCore-1.12.2-3.7.5.259-universal.jar
RecurrentComplex-1.4.7.jar
RedstoneArsenal-1.12.2-2.3.11.5-universal.jar
RedstoneFlux-1.12-2.0.1.2-universal.jar
Reliquary-1.12.2-1.3.4.760.jar
SGExtraParts-1.12-1.4.1-34.jar
SanLib-1.12.2-1.4.2.jar
SilentLib-1.12-2.2.18-100.jar
SilentsGems-1.12-2.6.9b-265.jar
Simple-Void-World-1.12-1.2.0.9-universal.jar
SimplyJetpacks2-1.12.2-2.2.2.28.jar
SleepVote-1.1.0-S7.0.jar
StorageDrawers-1.12.2-5.3.6.jar
StorageDrawersExtras-1.12-3.1.0.jar
The Beneath-1.12.2-1.4.1.jar
TheBetweenlands-3.3.7-universal.jar
TheBetweenlands-3.3.7-core.jar
ThermalCultivation-1.12.2-0.1.5.3-universal.jar
ThermalDynamics-1.12.2-2.3.11.7-universal.jar
ThermalExpansion-1.12.2-5.3.12.17-universal.jar
ThermalFoundation-1.12.2-2.3.12.10-universal.jar
ThermalInnovation-1.12.2-0.1.0.3-universal.jar
TickProfiler-1.12-0.0.4.jar
Toast Control-1.12.2-1.4.1.jar
UniDict-1.12.2-2.4c.jar
ViesCraft-1.12.2-5.6.1.jar
WanionLib-1.12.2-1.5.jar
WirelessCraftingTerminal-1.12.2-3.9.64.jar
YNot-0.2.2.jar
ae2stuff-0.7.0.4-mc1.12.2.jar
angelRingToBauble-1.12-0.3.1.50+d4e654e.jar
appliedenergistics2-rv5-stable-11.jar
astralsorcery-1.12.2-1.8.5.jar
backpacks 1.12.2 - 3.4.4.jar
badwithernocookiereloaded-1.12.2-2.12.jar
base-1.12.2-3.7.1.jar
baubley-heart-canisters-1.12.2-1.1.0b.jar
bdlib-1.14.3.12-mc1.12.2.jar
blockcraftery-0.1.3.jar
car-1.2.11.jar
chickens-6.0.4.jar
compactmachines3-1.12.2-3.0.7-b197.jar
corail_pillar-4.1.0-1.12.jar
corail_pillar_extension_chisel-4.0.0-1.12.jar
corail_pillar_extension_quark-4.0.0-1.12.jar
diethopper-1.1.jar
elementaldimensions-1.12-0.2.0.jar
elulib-0.1.12.jar
environmentaltech-1.12.2-2.0.9c.jar
etlunar-1.12.2-2.0.9a.jar
extrautils2-1.12-1.7.6.jar
fluxnetworks-1.12.2-3.0.7.jar
foamfix-0.9.9.1-1.12.2-anarchy.jar
generators-0.9.20.12-mc1.12.2.jar
gottagofast-1.1.jar
gravestone-1.10.1.jar
hatchery-1.12.2-2.1.2.jar
iChunUtil-1.12.2-7.1.4.jar
iceandfire-1.4.0-1.12.2.jar
industrialforegoing-1.12.2-1.8.9-138.jar
instantunify-1.12.2-1.1.1.jar
ironchest-1.12.2-7.0.40.824.jar
jei_1.12.2-4.9.0.163.jar
journeymap-1.12.2-5.5.2.jar
llibrary-1.7.9-1.12.2.jar
lostcities-1.12-2.0.7.jar
lostsouls-1.12-1.1.4.jar
malisiscore-1.12.2-6.4.0.jar
malisisdoors-1.12.2-7.3.0.jar
mcjtylib-1.12-2.6.7.jar
modnametooltip_1.12.2-1.10.0.jar
modtweaker-4.0.10.jar
morechickens-1.12.2-3.1.0.jar
natura-1.12.2-4.3.2.49.jar
p455w0rdslib-1.12-2.0.29.jar
rftools-1.12-7.33.jar
rftoolsctrl-1.12-1.8.1.jar
rftoolsdim-1.12-5.52.jar
rftoolspower-1.12-1.0.0.jar
sonarcore-1.12.2-5.0.7.jar
spongeforge-1.12.2-2690-7.1.0-BETA-3110.jar
tesla-core-lib-1.12-1.0.13.jar
theoneprobe-1.12-1.4.22.jar
torchmaster_1.12.2-1.6.1.53.jar
twilightforest-1.12.2-3.6.345-universal.jar
valkyrielib-1.12.2-2.0.9b.jar
xnet-1.12-1.6.9.jar

commented

@gegy1000 Just wondering if I can provide any more information to help diagnose this issue?

commented

Adding information to reproduce the leak. Charred grass from the Dragons and the Dragon Armor sets seem to accelerate the leak.

commented

I believe I've found the issue. All EntityProperties hold a reference to the entity. It seems that this causes the GC to not release the keys as they are still referenced.

commented

Fixed the issue, will get a release out soon.

commented

Reopening due to issue with fix.

commented

This is great news.

commented

Released as 1.7.13. :)