Refined Storage

Refined Storage

77M Downloads

Connecting level external storage and exporter causes server lock

TheDarkFlame opened this issue ยท 1 comments

commented

Describe the bug

I was attempting to achieve the following:

Auto-craft items until a certain number exists in the storage system (thereby passively buffering my crafting with simple components during down-time, reducing the time spent during big crafts).

However, I managed to get myself timed out, and my server became unresponsive (had to revert to an earlier backup).

How I did it:

used an exporter with regulator + crafting upgrade, and then connected external storage to the compacting storage drawer, and requested that 64 of the compacted item are exported into the storage. I thought that this would result in the storage seeing that there is a missing amount of items in the storage, and crafting the difference, however in reality, I believe the following loop occurred:

  • see items are missing
  • grab the un-compacted version of the item (from compact storage drawer)
  • craft the compacted version of the item
  • notice that items are still missing
  • grab the un-compacted version of the item (from compact storage drawer)
    --- etc

Possible solutions:

Allow regulator upgrade to go above the 64 item limit to allow low-level recipes to be requested. Does not solve the loop, but solves the reason for the loop

Allow regulators to be put into external storage interfaces, allowing a requested amount that should exist in the external storage

create a "passive crafting interface + monitor" which functions similarly to the existing crafting interface+monitor, except allows you to define a limit for items which are desired, and only processes when there is not something actively crafting

an extremely large and messy array of detectors+ exporters

How can we reproduce this bug or crash?

  1. add any 2x stacking item recipe into compacting drawers from functional storage mod (I used netherite ingot 1x from ATM8)
  2. add crafting patterns for:
    2.1. base item from something else (netherite ingot from netherite essence)
    2.2. block of item (netherite ingot block from netherite)
    2.3. 1x compacted block (netherite 1x from netherite block)
  3. place a compacting drawer, lock the drawer using the configuration tool, and then add a single item (netherite ingot) to set the items for the drawer.
  4. connect external storage to drawer
  5. connect exporter to drawer, insert crafting + regulator upgrades
  6. [probably not required to re-create the issue] add base item ingredients (netherite essence), but not enough that the entire recipe can be fulfilled yet (the idea would be to add more later, simulating the production of inputs)
  7. set the regulator upgrade to 64 of 1x compacted block and toggle the exact mode button

What Minecraft version is this happening on?

Minecraft 1.19.2

What Forge version is this happening on?

43.2.3

What Refined Storage version is this happening on?

1.1.5 + 0.9.0 add ons + functionalstorage 1.1.3 (ATM8 1.0.11)

Relevant log output

No response

commented

This seem to be part of my problem too as the WHITELIST seem to not hide other items from the system on a Fictional Storage system connected with an external storage

Not sure what the whitelist is for if the system can still see all the items in a container

blacklist works as it is pulling from the RE system just RE ignores the whitelist settings it seems