Integrated Crafting

Integrated Crafting

31M Downloads

Item exporter with craft = true intermittently fails to craft but the job remains active

tinyrobot opened this issue · 23 comments

commented

Issue type:

  • 🐛 Bug

Short description:

An item exporter with 'craft' set to 'true' intermittently has the job listed as active in the crafting job monitor but never completes - it remains listed as the only job and the timer increments but it does not execute.

Steps to reproduce the problem:

I was unable to reproduce this in a creative test world, but in my current survival world:

  1. Have an inventory with bone available
  2. Add a crafting interface to a crafting table with a recipe for bone -> bonemeal
  3. Add an item exporter to an inventory with a variable card for item = bonemeal and 'craft' = true

Expected behaviour:

Job should complete


Versions:

  • This mod: 1.0.0
  • Minecraft: 1.12.2
  • Forge: 1.8.0
commented

Sorry that I was unable to replicate this in a test world - I left it running for an hour or so but the issue did not occur with a simple setup. I have also checked my logs and can't see anything related to integrated crafting that looks like an error. However - in my survival world this happens consistently.

commented

@tinyrobot What happens if you manually start such a crafting job in your world? What do you see in the crafting job terminal as status for the job (after clicking on it)? (screenshot would be nice as well)

commented

Hiya,

I've attached my latest.log anyway, as the issue is present at the moment - screenshots are:

The still in progress job requested via an item exporter with 'craft' set to true:
2019-01-31_19 33 26

The details for that job:
2019-01-31_19 33 39

The job list after requesting manually:
2019-01-31_19 42 46

The detail of the manually requested job:
2019-01-31_19 42 53

If you 'cancel all' then the jobs start working again for a time (I'm not sure what this time period is specifically)

Let me know if there's anything further I can give you, I appreciate it's a tricky one because I can't replicate it!

commented

Yes, that's right - one thing I forgot to add to my test setup last night is a unidirectional connector linking the 'bone' storage network to the 'crafting' network. I'll do that when I get home and see if that can reproduce it.

commented

Ah ok, so it only fails sometimes.

commented

I am able to somewhat recreate this in a test world, here is a screenshot of the setup:

2019-02-01_20 17 31

  • the chest on the left has an item exporter with export item = bone meal and craft = true
  • its item exporter is connected to an omnidirectional connector (I think this is important!)
  • the right hand chest has bone and it's connected to the crafter with the bone meal recipe. Its network has the other omnidirectional connector attached.

To (somewhat) replicate: with the above setup, save and exit world, then rejoin world. The crafting job for bonemeal should then be an active job, that does not complete.

commented

Also I have confirmed in my 'main' world - replacing the omnidirectional director with a cabled connection resolves the issue on world load - however the issue still comes back after a time. I'm going to remove the remaining monodirectional connector and leave it overnight with just cables and see if that makes a difference.

commented

Thanks for the additional information @tinyrobot. I'll try to look into it soon.

commented

No rush :) I left it on all night and the issue did reoccur even hardwiring the network so my feeling is that this is 2 issues probably:

  1. omnidirectional connectors, on world load
  2. in my survival world the issue occurring after a time, even hardwired

I'm happy to split these into 2 issues if that makes things a bit cleaner? The only one I can reproduce is 1 currently although I will keep trying to figure out how to reproduce 2.

commented

Sure, could you open a separate issue for 1 at https://github.com/CyclopsMC/IntegratedDynamics with a reproducible test case?

GitHub
A Minecraft mod to take full and automated control of your appliances. - CyclopsMC/IntegratedDynamics
commented
commented

@tinyrobot I was not able to reproduce the problem. However, I just rewrote a couple of things, and this should make exporter-initiated crafting jobs more stable. Could you check if the problem still occurs for you with the latest dev builds of the following mods?

Build versions (or higher) of the mods to update:
ID: 1272
IT: 305
IC: 56

Maven links in the README of each repo.

commented

Thanks @rubensworks!

I updated to the versions as specified. I created a new creative test world with the following setup:

2019-02-04_20 16 43

Left chest contents:
2019-02-04_20 16 58

Exporter:
2019-02-04_20 17 23

Observed crafting job working - save + exit, rejoin world, open crafting monitor:
2019-02-04_20 16 50

latest.log

So the issue seems still to be there for me unfortunately - do you think this could be because I am using a modpack? I'm using the latest DW20 with Integrated-* and dependencies updated appropriately. Should I be trying to replicate this with solely Integrated-*?

commented

Hrmm, in that case I don't really have any clue what could be going wrong...

@tinyrobot After restarting your world, what are the contents of your interface chest? Do you see any bonemeal in there? Or have they all been moved to the output chest already? And is this the same after canceling the job+restarting the world a couple of times?

I'm using the latest DW20 with Integrated-* and dependencies updated appropriately. Should I be trying to replicate this with solely Integrated-*?

It shouldn't be related to that. But just in case it is, it may indeed be good to try that.

commented

Heya, I've done some tests noting the presence of bonemeal in the interface chest. Each test is a save and exit -> rejoin world.

Test Issue seen? Bonemeal in interface chest? Cancel all jobs pressed?
1 ⬜️
2 ⬜️ ⬜️ ⬜️
3 ⬜️
4
5
6 ⬜️ ⬜️ ⬜️
7 ⬜️ ⬜️ ⬜️
8

On test 8, I clicked 'cancel all' multiple times - the job list cleared, then a new job was added - but the issue came back immediately (job timer increases and it doesn't complete). I did this 4 times - there was always bonemeal in the interface chest.

Sorry this doesn't seem to clear much up :(

commented

Thanks for the details information!

You're right, it looks like the presence of bonemeal has no influence on the occurrence of the issue.
This does however give me some useful information.

@tinyrobot I assume that each time there was bonemeal in the chest, there were less than 3?

commented

Actually it was exactly 3 each time (the recipe out is 3 bone meal), not sure if that means anything?

commented

actually it was exactly 3 each time, not sure if that means anything?

Oh, that means that the crafting job was not detected as being finished, even though the exact recipe output are present, interesting...

Note to self: it's possible that the crafting handler is being executed before the network observers are being registered after a server restart.

commented

Ok, good news: I've managed to reproduce this bug myself and fix it!

To be extract sure, could you double-check if the fix also works for you @tinyrobot?
ID, IT and ICrafting have been updated, so you can just use the latest dev build for those.

commented

@rubensworks thanks! I've done some testing and I think there's still an issue, although maybe a slightly different one?

Setup:

  • created a new creative test world
  • rebuilt the setup
  • still using a modpack (latest dw20 1.12)

I updated to the following versions:
IntegratedCrafting-1.12.2-1.0.1-59
IntegratedDynamics-1.12.2-1.0.3-1276
IntegratedTerminals-1.12.2-1.0.1-70

Here are the results:

Test Issue seen? Bonemeal in interface chest? Cancel all jobs pressed? Notes
1 ⬜️ ⬜️ ⬜️ na
2 ⬜️ ⬜️ ⬜️ na
3 ⬜️ ⬜️ ⬜️ na
4 ⬜️ ⬜️ ⬜️ na
5 *
6 **
7 ⬜️ ⬜️ ⬜️ na
8 ⬜️ ⬜️ ⬜️ na

* Pressing 'cancel all' - this cancelled the current job, started a new one, and then that job exhibited the issue. Pressed cancel all another few times and exited world with issue persisting.
** Pressing 'cancel all' - this cancelled the current job, started a new one, and then that job exhibited the issue. Pressed cancel all another few times - eventually the issue stopped occurring, at which point exited world (with issue not persisting)

So it seems that if the issue is there when you exit the world, it'll still be there when you rejoin. Would you like me to open a separate issue for pressing 'cancel all' and seeing the issue occur?

Thanks again, let me know if there's a more useful way I can test this - if you think the modpack could be the issue let me know and I will test again with just integrated-* mods.

commented
commented

@rubensworks - sorry, I read 'IT' as 'Integrated Terminals' not Tunnels!

I upgraded Integrated Tunnels to dev build -306 - I ran 20 save/reload cycles and I have not seen the issue so I think it's resolved! Legend.

commented

My bad, I should have made that clearer.

I have not seen the issue so I think it's resolved!

🎉