Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

External Storage disconnects upon save and reload #3578

Open
changhe3 opened this issue Oct 21, 2023 · 16 comments
Open

External Storage disconnects upon save and reload #3578

changhe3 opened this issue Oct 21, 2023 · 16 comments
Labels
bug Something isn't working

Comments

@changhe3
Copy link

changhe3 commented Oct 21, 2023

Describe the bug

Buuz135/FunctionalStorage#203

As it has been reported here, basically each time I reload, the FS drawers become disconnected and I have to break and reconnect the cable (which has a be a cable within the chunk as the controller after some testing it seems). I'm pretty sure it's not a chunk loading issue either as I have chunkloaded all near by chunks.

Edit: Upon further testing, this happens to every kinds of storage when used with external storage, not just the storage drawers.

How can we reproduce this bug or crash?

  1. Connect the FS drawer controller to RS with external storage
  2. Save and Reload

What Minecraft version is this happening on?

Minecraft 1.20.1

What Forge version is this happening on?

NeoForge 47.1.79

What Refined Storage version is this happening on?

1.12.3

Relevant log output

no log
@changhe3 changhe3 added the bug Something isn't working label Oct 21, 2023
@Wishbone1977
Copy link

This sounds an awful lot like this issue cropping up again: #2636

@Skilles
Copy link

Skilles commented Nov 2, 2023

Can confirm this is happening to me as well in the Direwolf 1.20 pack. Super annoying. I ended up making a controller extension to keep it in the same chunk as the controller, but now all my crafters in other chunks need to be reconnected after every reload.

@raoulvdberge raoulvdberge added this to the v1.12.4 milestone Nov 4, 2023
@raoulvdberge
Copy link
Collaborator

raoulvdberge commented Nov 5, 2023

Thanks for the info guys. I cannot reproduce this myself. I will need your help to solve this.

How can you help?

  • Can you create a test world with a minimal set of mods (maybe even just Refined Storage) that reproduces this issue?
  • How far is the External Storage from the Refined Storage Controller?
  • What is the chunkloading situation?
  • Are there reproduction steps that work 100% of the time?

@raoulvdberge raoulvdberge removed this from the v1.12.4 milestone Nov 5, 2023
@LeSwede
Copy link

LeSwede commented Nov 5, 2023

Thanks for the info guys. I cannot reproduce this myself. I will need your help to solve this.

How can you help?

  • Can you create a test world with a minimal set of mods (maybe even just Refined Storage) that reproduces this issue?
  • How far is the External Storage from the Refined Storage Controller?
  • What is the chunkloading situation?
  • Are there reproduction steps that work 100% of the time?

If you want I can replace all my AE2 stuff in my Techopolis 2 world with RS stuff. Thats where I had the issue personally.

@raoulvdberge
Copy link
Collaborator

Preferably we get a minimal reproduction testcase. So with the least amount of mods required.

@LeSwede
Copy link

LeSwede commented Nov 5, 2023

I'll see what I can do with just RS and drawers

@Wishbone1977
Copy link

Preferably we get a minimal reproduction testcase. So with the least amount of mods required.

I've made an MC 1.20.1 installation with only Refined Storage, Storage Drawers, JEI and More Overlays (for easier experimentation with chunk boundaries). I'll fool around with it tomorrow to see if I can replicate the issue.

@raoulvdberge
Copy link
Collaborator

Thanks guys!

@Wishbone1977
Copy link

I haven't managed to reproduce the issue. I've tried various setups, primarily focused around chunk borders (since that is how the issue originally materialized for me). Given the number of potential variables involved, I don't really know what else to try. I did use a creative controller since I had no powergen mods available, but I wouldn't expect that to make any difference.

The only hypothesis I can come up with is some sort of potential race condition, brought on by a large amount of activity on world load. This might explain why the issue pops up occasionally in full modpack worlds, but is impossible to replicate in small test setups. If that is the case, then while it may not be related to any other specific mod, it might still require the presence of many more mods, as well as more infrastructure using those mods in order to provoke the issue.

But that is purely guesswork on my part. I don't have any idea if that is actually feasible or not.

@Skilles
Copy link

Skilles commented Nov 13, 2023

I haven't managed to reproduce the issue. I've tried various setups, primarily focused around chunk borders (since that is how the issue originally materialized for me). Given the number of potential variables involved, I don't really know what else to try. I did use a creative controller since I had no powergen mods available, but I wouldn't expect that to make any difference.

The only hypothesis I can come up with is some sort of potential race condition, brought on by a large amount of activity on world load. This might explain why the issue pops up occasionally in full modpack worlds, but is impossible to replicate in small test setups. If that is the case, then while it may not be related to any other specific mod, it might still require the presence of many more mods, as well as more infrastructure using those mods in order to provoke the issue.

But that is purely guesswork on my part. I don't have any idea if that is actually feasible or not.

For what it's worth, I had this happen with a pretty minimal base (drawers + refined storage). I'm going to try disabling things like multi-threaded chunk loading first and then removing mods one at a time.

@Wishbone1977
Copy link

For what it's worth, I had this happen with a pretty minimal base (drawers + refined storage). I'm going to try disabling things like multi-threaded chunk loading first and then removing mods one at a time.

I do have a world which has the problem, but it's not much use in this situation since it's a much older version, from before the changes made in #2636.

@Skilles
Copy link

Skilles commented Nov 16, 2023

Just started a playthrough in another modpack (ATM 9) and ran into the same exact bug again (though it didn't happen when I first built my system + drawers). If it's this easily reproducible in large modpacks than I assume there is a mod conflict happening. I have my suspicion on FTB chunks since the only thing I can think of that started causing it to happen was unclaiming & claiming the chunks that the controller and/or external storage was in.

@Wishbone1977
Copy link

Just started a playthrough in another modpack (ATM 9) and ran into the same exact bug again (though it didn't happen when I first built my system + drawers). If it's this easily reproducible in large modpacks than I assume there is a mod conflict happening. I have my suspicion on FTB chunks since the only thing I can think of that started causing it to happen was unclaiming & claiming the chunks that the controller and/or external storage was in.

If this is indeed still the same problem as #2636, then I ruled that out at that time. I uninstalled FTB utilities entirely and the problem still persisted.

@BonaireDreams
Copy link

BonaireDreams commented Jan 18, 2024

I'm running a custom pack on 1.20.1 and have this same issue. Seems to be a repeat of #2636. Current easiest fix enabling redstone controller on the Controller and then placing a lever beside it. When I join the world no external storage on a diamond chest shows, but no external storage connected to storage drawers shows until the controller is reset. Toggling the controller on and off using the lever restores connections. (Just reading some old threads on this issue) The External connector to the chest is on the same chunk as the controller, the external connectors on the drawer controllers are not.

@TommyC81
Copy link

TommyC81 commented Oct 6, 2024

Experiencing the same on Forge 1.20.1 (47.3.7), using the latest versions of Refined Storage and Functional Storage. Have to disconnect and reconnect a storage cable within the same chunk as the RS controller to access the functional storage controller (and RS crafters) after every server restart to reconnect them to the RS storage system.

No chunkloaders in use (have mods installed though). Full list of mods as per attached (all are the latest version as of today for Forge).

OurGame-1.20.1.txt

Update 1: The RS controller and inventory is in a different chunk than my external storage and crafters. The crafters also don't show up until disconnecting and reconnecting the storage cable. Screenshot:
2024-10-06_17 02 53

Update 2: Removed Better Chunk Loading, no difference. To make the functional storage controller and crafters reconnect proper, I need to remove one storage cable that is within the same chunk as the RS storage controller (tried first with one cable in the functional storage controller chunk, but it made no difference).

Update 3: Removed Chunk Sending, no difference.

Update 4: Added an Advanced Chunk Loader, to load the relevant area, it now works as expected. Removing the chunk loader and restarting causes the issue to return.

Update 5: Re-added Better Chunk Loading and Chunk Sending, whilst keeping a Chunk Loader. All works as expected now. So, definitely something to do with chunkloading being a problem. I also find it interesting that the only way to fix it manually (apart from using a chunk loader) was that it was specifically necessary to remove/replace a storage cable within the same chunk as the RS controller - doing it within the adjacent chunk (where crafters and functional storage controller is located) had no effect.

@Bellian
Copy link

Bellian commented Dec 6, 2024

Jea, also have this problem on Direwolf 1.20.
For me it was enough to just place a "Chunk Loading Marker" on the ground next to the controller.
Thanks for the tip!

Update 1: Apparently it worked for some external storages but not for all!
External storages in close chunks where fine, but one far away was still missing and only came back when a cable was added.
Looks like a race condition in chunk loading.
Maybe a quick workaround would be to trigger a network update several seconds after a game / server is started?
Or a update on chunk load.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

8 participants