Integrated Dynamics

Integrated Dynamics

63M Downloads

Autocrafting with upgraded drawers causes the game to freeze

Mexolius opened this issue ยท 6 comments

commented

Issue type:

  • ๐ŸŒ Performance issue

Short description:

Storage drawers storage upgrades causing autocrafting craft plan calculation time to skyrocket. It might be connected to #351.
Bad news is that the lag causes a disconnection from the server that the server doesn't know about. So when you try to reconnect you can't since server thinks you're online.
Good news is that the server doesn't seem to be damaged in any way

Steps to reproduce the problem:

Word of warning: This may or may not cause your computer to start lagging immensely. Please save your work in other places before attempting

  1. The problem was found on NTC2 modpack
  2. Place a few (1-5) storage drawers.
  3. Place logic cable near then and connect them to the network using item interfaces
  4. Place a few crafting tables and connect them to the network using crafting terminals
  5. Program needed recepies on variable cards. My recepie needed 4 variable cards (1 actual and 3 dependencies)
  6. Place autocrafting recepies in the crafting terminals
  7. Example of setup:
    obraz
  8. Begin an autocrafting job This works fine
  9. Add an emerald storage upgrade to any of the drawers
  10. Begin an autocrafting job Very long or even infinite calculation time

Versions:

  • This mod: 1.10.5
  • Integrated Crafting: 1.0.20
  • Integrated Tunnels: 1.8.8
  • Integrated Terminals: 1.2.10
  • Minecraft: 1.16.5
  • Forge: 36.2.21

I'm not sure which mod causes the issue

Profiler output:

Profiler without the bug caused: https://spark.lucko.me/hYqtQJlrJE

I don't know how the get the profiler output with the recorded bug - the game freezes and the console is not accessible, So I can't call "spark profiler --stop.

Something worth noting (maybe) is that the controls work smoothly, but all the blocks say "waiting for server" like this
obraz

commented

As i mentioned, i provided a spark log without the issue (just to provide anything). The one where the issue occurs is very hard to get since after it happens you cannot open the console - thus not allowing to use spark profiler --stop. I've let it run for like 30-40 minutes hoping to get the result after it stops the calc, but after that i needed my PC back so i had to quit. Also in most cases the only way to close the game is to kill the process via task manager.

edit:
I just noticed you can use the timeout option, maybe it will help but i doubt since you don't get to access the console to get the output link. I will try it tomorrow and ping when I get some results

commented

Thanks for reporting!

commented

Hmm, I don't see anything that pops out from the spark logs.
Are you sure you included the correct log?
Did the problem occur when you recorded the log?

commented

I've let it run for 3 hours and it didn't unfreeze. My laptop isn't the best, but it's not that bad. I guess it's stuck for good and it doesn't prodcue the log even with timeout option. Sorry, but i don't see how i could provide you with more info :/

Ah, one more thing that might be somewhat informative is that when i connected the drawers to the network it said it had something like 8 billion capacity. If it really sees that much inventory then it might be trying to check it all when calculating the recepie

commented

Ok, I see. l This will be a very tricky one to debug in that case.

commented

Thanks for the additional input @Mexolius, that actually gives me a lot of valuable information :-)
It seems like this is a deadlock issue, and not really a performance problem.

These are things that were resolved in recent versions of the mod.
Can you try updating to the latest? (because it seems you're not yet using the latest)
And make sure craftingPlannerEnableMultithreading is set to false, because that has become the default now for Integrated Terminals.