Botania (Fabric/Quilt)

Botania (Fabric/Quilt)

5M Downloads

Elven Gateway Core is causing lag

Philosyang opened this issue ยท 8 comments

commented

Version Information

Forge version: 14.23.3.2655
Botania version: r1.10-354 (1.12.2)

Further Information

Steps to reproduce:

  1. Build an Elven Gateway multiblock
  2. Turn it on and keep it on for some hours
  3. TPS dropping gradually from stable 20 to ~10 (on a dedicated server)
  4. Turn it off
  5. TPS back to 20

What I expected to happen:
Keeping it on without lag.

What happened instead:
Noticeable TPS drop as time passes.

Gateway uptime - 5min: (expected)
5min
Gateway uptime - 5hrs:
5hrs

commented

can you capture a profile report at the "5 hours in" stage using something like visualvm, warmroast (if that's still a thing), sampler, or even the vanilla profiler (/debug start, wait a minute or two, /debug stop) and share the results here?

commented

and is this gateway core idle or are items being put in it?

commented

I believe players are putting things into it at times, but I can't confirm whether not putting items will stop the lag or not.
Vanilla debugging is so laggy that I will choose another time when there is no one except me in the server.

commented

Do items happen to be going in to it? I know there's a bug (#2403) where any item that enters the portal that isn't part of a valid elven recipe just stays there, forever, in the NBT tag.

Can you /blockdata <gateway core position> {} ?

commented

There were no excess items thrown into the portal.

commented

I can see CPU load on the Elven Gateway Core with no item being throw in:
image

image

Since nothing is in the portal, I wonder what is this ItemStack check visible in the Warmroast report?

List of mods involved: https://www.technicpack.net/modpack/fsg-spectracraft.1282933/mods version 1.0.1
including Botania 1.12.2-r1.10-354

For the record, lag is also observed with PureDaisy when incompatible blocks are placed around it (for example, living rock).
image
Values are underestimated since the Pure daisy was removed early on during the 33 mn profiling.

Block data while it's lagging:

[23:28:07] [main/INFO] [net.minecraft.client.gui.GuiNewChat]: [CHAT] The data tag did not change: {portalStack8:{id:"botania:livingrock",Count:1b,Damage:0s},portalStack9:{id:"botania:livingrock",Count:1b,Damage:0s},portalStack6:{id:"botania:livingrock",Count:1b,Damage:0s},portalStack7:{id:"botania:livingrock",Count:1b,Damage:0s},portalStack4:{id:"botania:livingrock",Count:1b,Damage:0s},portalStack5:{id:"botania:livingrock",Count:1b,Damage:0s},portalStack2:{id:"botania:livingrock",Count:1b,Damage:0s},portalStack3:{id:"botania:livingrock",Count:1b,Damage:0s},portalStack0:{id:"botania:livingrock",Count:1b,Damage:0s},portalStack1:{id:"botania:livingrock",Count:1b,Damage:0s},ticksOpen:107895,portalStack10:{id:"botania:livingrock",Count:1b,Damage:0s},id:"botania:alfheimportal",portalStack13:{id:"minecraft:quartz_block",Count:1b,Damage:0s},portalStack14:{id:"minecraft:quartz_block",Count:1b,Damage:0s},portalStack11:{id:"botania:livingrock",Count:1b,Damage:0s},portalStack12:{id:"botania:livingrock",Count:1b,Damage:0s},portalStack17:{id:"minecraft:quartz_block",Count:1b,Damage:0s},portalStack18:{id:"minecraft:quartz_block",Count:1b,Damage:0s},portalStack15:{id:"minecraft:quartz_block",Count:1b,Damage:0s},portalStack16:{id:"minecraft:quartz_block",Count:1b,Damage:0s},portalStack19:{id:"minecraft:quartz_block",Count:1b,Damage:0s},ticksSinceLastItem:78452,stackCount:45,portalStack20:{id:"minecraft:quartz_block",Count:1b,Damage:0s},portalStack21:{id:"minecraft:quartz_block",Count:1b,Damage:0s},portalStack24:{id:"minecraft:quartz_block",Count:1b,Damage:0s},portalStack25:{id:"minecraft:quartz_block",Count:1b,Damage:0s},portalStack22:{id:"minecraft:quartz_block",Count:1b,Damage:0s},portalStack23:{id:"minecraft:quartz_block",Count:1b,Damage:0s},portalStack28:{id:"minecraft:quartz_block",Count:1b,Damage:0s},portalStack29:{id:"minecraft:quartz_block",Count:1b,Damage:0s},portalStack26:{id:"minecraft:quartz_block",Count:1b,Damage:0s},ForgeData:{SpongeData:{}},portalStack27:{id:"minecraft:quartz_block",Count:1b,Damage:0s},portalStack31:{id:"minecraft:quartz_block",Count:1b,Damage:0s},portalStack32:{id:"minecraft:quartz_block",Count:1b,Damage:0s},portalStack30:{id:"minecraft:quartz_block",Count:1b,Damage:0s},portalStack35:{id:"minecraft:quartz_block",Count:1b,Damage:0s},portalStack36:{id:"minecraft:quartz_block",Count:1b,Damage:0s},portalStack33:{id:"minecraft:quartz_block",Count:1b,Damage:0s},portalStack34:{id:"minecraft:quartz_block",Count:1b,Damage:0s},portalStack39:{id:"minecraft:quartz_block",Count:1b,Damage:0s},portalStack37:{id:"minecraft:quartz_block",Count:1b,Damage:0s},portalStack38:{id:"minecraft:quartz_block",Count:1b,Damage:0s},x:586,portalStack42:{id:"minecraft:quartz_block",Count:1b,Damage:0s},y:62,portalStack43:{id:"minecraft:quartz_block",Count:1b,Damage:0s},z:-960,portalStack40:{id:"minecraft:quartz_block",Count:1b,Damage:0s},portalStack41:{id:"minecraft:quartz_block",Count:1b,Damage:0s},portalStack44:{id:"minecraft:quartz_block",Count:1b,Damage:0s}}

Block data after closing the portal:

[23:29:32] [main/INFO] [net.minecraft.client.gui.GuiNewChat]: [CHAT] The data tag did not change: {stackCount:0,ForgeData:{SpongeData:{}},ticksOpen:0,x:586,y:62,z:-960,id:"botania:alfheimportal",ticksSinceLastItem:0}
commented

The block data shows 44 stacks of random things like quartz blocks, so it is related to #2403. I think another thing is that the recipe copies items to check for matching. I'm gonna try to mitigate this a bit if not fix outright.

commented

This issue is stale because it has been open for a while with no activity. Remove stale label or comment or this will be closed soon.