Slimefun blocks turn into vanilla blocks randomly
LordIdra opened this issue · 6 comments
❗ Checklist
- I am using the official english version of Slimefun and did not modify the jar.
- I am using an up to date "DEV" (not "RC") version of Slimefun.
- I am aware that issues related to Slimefun addons need to be reported on their bug trackers and not here.
- I searched for similar open issues and could not find an existing bug report on this.
📍 Description
Blocks from slimefun and addons turn into vanilla blocks with alarming frequency (almost every day). I have yet to figure out if restarts affect the frequency, though I do 2 restarts a day. This seems to happen more commonly with certain addons (infinity expansion storage units are the main culprit) but blocks from core slimefun and all other addons are also affected. There is no NBT data on the affected blocks, nor can I find them in their respective file in data-storage/Slimefun/stored-blocks. This issue has persisted for over a month with up-to-date Slimefun DEV versions.
I don't know how this can be reproduced, but there are slimefun errors relating to save file copying in the attached log file on lines 1000, 881, and 897 - may be related?
📑 Reproduction Steps
Can't figure out how to reproduce this. Events where slimefun blocks are converted to vanilla blocks seem to be completely random; I'm unable to find any regularity or pattern.
💡 Expected Behavior
Expected slimefun blocks not to turn into vanilla blocks.
📷 Screenshots / Videos
No response
📜 Server Log
https://gist.github.com/LordIdra/89536afff6533120d5b8592205cd812e
📂 /error-reports/
folder
No response
💻 Server Software
Paper
🎮 Minecraft Version
1.17.x
⭐ Slimefun version
🧭 Other plugins
No response
Hastebin doesn't do well with a lot of data. Use something like Pastebin or a GitHub Gist
I found an interesting error:
[04:54:25] [Craft Scheduler Thread - 1866/ERROR]: [Slimefun] An Error occurred while copying a temporary File for Slimefun DEV - 950 (git 8c0ef8a9)
java.nio.file.AccessDeniedException: data-storage\Slimefun\stored-blocks\world\WATER_TURBINE.sfb.tmp -> data-storage\Slimefun\stored-blocks\world\WATER_TURBINE.sfb
at sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:89) ~[?:?]
at sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:103) ~[?:?]
at sun.nio.fs.WindowsFileCopy.move(WindowsFileCopy.java:315) ~[?:?]
at sun.nio.fs.WindowsFileSystemProvider.move(WindowsFileSystemProvider.java:293) ~[?:?]
at java.nio.file.Files.move(Files.java:1426) ~[?:?]
at me.mrCookieSlime.Slimefun.api.BlockStorage.save(BlockStorage.java:339) ~[?:?]
at io.github.thebusybiscuit.slimefun4.core.services.AutoSavingService.saveAllBlocks(AutoSavingService.java:94) ~[?:?]
at org.bukkit.craftbukkit.v1_17_R1.scheduler.CraftTask.run(CraftTask.java:101) ~[patched_1.17.1.jar:git-Paper-123]
at org.bukkit.craftbukkit.v1_17_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:54) ~[patched_1.17.1.jar:git-Paper-123]
at com.destroystokyo.paper.ServerSchedulerReportingWrapper.run(ServerSchedulerReportingWrapper.java:22) ~[patched_1.17.1.jar:git-Paper-123]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) ~[?:?]
at java.lang.Thread.run(Thread.java:831) [?:?]
This means that server does not have access to the WATER_TURBINE.sfb
file. And this means that block has not been saved.
There are also other similar errors.
Closing this because there is no update on it.
We discussed this on Discord and it seems like there is file permission issue.
You could reopen this or create a new issue if this still occured.
For those wondering, this issue was closed due to it not being reproducible (I'm still unsure why this only happened to me specifically, but suspect is has something to do with the operating system or some obscure conflicting plugins), so I 'solved' the problem by compiling slimefun myself and modifying the save script to retry file movement if it failed initially. If anyone else is experiencing the same issue or wants the exact code, shoot me a message on Discord under Idra#9838 :)