Refined Storage

Refined Storage

77M Downloads

Parallel crafting orders steals items from each other

LukeXuan opened this issue ยท 1 comments

commented

Issue description:

Whenever I request two or more orders of items using the same intermediate products, there's a non-negligible chance that one of the order's intermediate products will be stolen by another one.

This issues render it impossible to request multiple items at the same time as long as they share some common material (say, an iron ingot).

What happens:

Let's say we have two running crafting orders (let's call them order X and order Y, each crafting a stack of C), both done in an auto-crafting sequence of A->B->C. Given proper timing, there is a chance when order X feeds material B to processing machine, but order Y grabs all the products. Y will consider itself accomplished as soon as enough of C is grabbed, even if there are still some B not thrown into the machine. In that case, order X will get stuck forever unless you cancel it manually.

This can be confirmed by looking at the crafting monitor, where order Y's last screen shows B: 2 stored before disappears.

What you expected to happen:

Y should at least throw all its allocated B into the processing machine, or resolved in some other ways.

Steps to reproduce:

  1. build a pipeline like containing iron ore->iron ingot, iron ingot->iron nugget.
  2. Request two orders for iron nuggets of sufficient size for multiple times,
  3. observe some order getting stuck

Version (make sure you are on the latest version before reporting):

  • Minecraft: 1.16.4
  • Forge: 35.1.13
  • Refined Storage: 1.9.9

Does this issue occur on a server? [yes/no] yes

If a (crash)log is relevant for this issue, link it here:

[pastebin/gist/etc link here]

commented

Yep. My bad. Did not realize this could be an issue. Fix is made and should go into the next update.