Malformed Data On Disk Error
mclo.gs/SU6RDty
I am able to pregenerate just fine, and then after some time of playing I get off and when I get back on, logs are spitting out many times PER SECOND that there is an unexpected query error due to the database disk image being malformed. I delete it, play some more, get back on later, and the same thing. All info is in the log, and I actually cut out 90% of it due to it just being all error (nothing unique was deleted). I am playing this in singleplayer.
88 Replies
again here is the log
in game, it is perfectly usable if I am to delete all the dh data in my world folder
I am playing on 1.20.1
it doesnt matter if the sqlite is 97 megabytes or 1.7 gigabytes
are you sure your storage device is fully functional?
If the database is repeatedly, something might be wrong eith your PC, either the drive/storage is dying, the RAM/CPU are unstable, or the OS is corrupted
Try running some sort of a disc check on the drive you the DB is stored
If on Windows you can start by running
sfc /scannow
For the drive you can use chkdsk
command with optional params, e.g. chkdsk {drive_letter}: /F /R /X /B
, though all those might be an overkill, and will take a lot of time, also if the drive is dying, putting heavy load on it might make it worse. I'm not specialized enough in this to know whish params should be passed in this situation and witch should not.
You can also use some third party app/software with GUI, e.g. Samsung offers its app (Samsung Magician) for testing drives, IDK if it works with not Samsung drives though
There is more similar universal software out there
For the CPU and RAM, you can run Prime95 - Small FFTs (all core + hyperthreading) for at least 30 min, if any of the threads crashes (or the whole PC), your CPU or RAM are unstable.yes its my home folder
I'm on Linux
did a smart test and my drive is perfectly fine. as i just said this drive is my home folder, so pretty much everything except steam games are on here. currently stress testing cpu and ram, but these are newer pieces. and this OS is extremely unlikely to be unstable, as its immutable
"Immutable Linux distributions are operating systems where the core system files and directories are read-only and cannot be modified or deleted, even by an administrator."
just for some more info, its a ryzen 7 5800x with 32gb of 3200mhz
I'll update after the stress test
who needs a heater when u got a pc
yeah memtest is showing errors
tried a different profile and got even more errors, 😞
so far after taking out one of the sticks i haven't been getting any errors
i have 3 sticks from 2025 and the one i took out is from 2021
so i think that was it
Always best to check the rest too, while keeping the 4th one in
Maybe the problem is from having 4 sticks and not from a bad stick
i was getting the same errors when i took out a different stick at first
99% and im getting the same errorsðŸ˜
glad i wasnt impatient and stopped it
I'm guessing i had taken out a 2025 stick instead of the 2021 but idk
hard to tell when they are identical
the pc wasnt posting with a specific stick by itself
3/4 were badðŸ˜
only one passed
Yikes.
:harold:
Reminded me of my Intel system where it's not the RAM that goes bad, but the controller on the CPU.
truly, a intel moment
4/4 on my other pc work
ima yoink some
@Miki_P98 I'm back after a while of testing individual ram sticks and finally have all 4 slots pass
its still happening.
so it's not the ram
and i had it running for multiple passes on the ram I'm using now
recap
smart status says everything is pretty good, just old age but nothing like bad sectors or anything. ram is confirmed passed on memtest86. cpu stressed with no issues. OS is immutable.
something ive noticed is there is only the sqlite when its not malformed, but when it is im also deleting sqlite-shm and sqlite-wal
they only get created after it generating for a little while

is it possible to get it to not make those files?
deleting them gets it working again
which seems to go against this

so idk why deleting those two files gets it working
but it working is still only temporary cuz it'll make them again after time passes
Immutable OS you say? Which one?
bazzite
which is fedora silverblue
Distant Horizons was never tested on an immutable OS. Let me fire up a VM to test that
I've given it full storage permissions just in case
but it only happens after it has been generating for some time, not immediately
7 GB disk image. This is going to take a while...
:yes:
yea its quite big
"gamer os"
it should just work fine
the immutable part is only for system files
Somehow the sqlite file is "corrupted" the moment the
wal
and shm
files are created, as per OP's statement.
I personally never tested Distant Horizons on an immutable OS, so I might want to test it out just to see how it behaves.i can throw bazzite on my sata ssd tomorrow maybe
I've been using bazzite for forever so this is only a recent thing
hm? I don't think hardester tested it yet
I worded that wrong.
:harold:
oh
😔
Reword:
OP said somehow the sqlite file is "corrupted" the moment the
wal
and shm
files are created.Still a long way before the download is complete.

there was however recently a funny btrfs bug where it would just prevent you from booting and drop you in a recovery shell lmao
ive had many issues with btrfs like that
they somehow shipped a bugged kernel
ah
was that what happened on my steam deck
bazzite on my deck
and you'd need to boot into a live iso and run
sudo btrfs rescue zero-log /dev/sdX
Right, I didn't install Hyper-V on this system. Be right back.
lol thats not how i fixed it but if that worked then thats good
i used sudo testdisk
I'm just gonna throw it on my ssd rn
if only my internet was faster
time to clean install linux for the 2nd time today
@Tray i didn't see it here but did you test with only DH?
i did and it wasn't happening but then turned it back on and it wasn't happening still so i have no idea what causes it after a seemingly arbitrary amount of time with or without distant generation on
Progress update, installation seems rather slow, probably because the backing storage is a spinning drive?

that part takes a while
always does
I already have it installed and am loading up mc rn
👌
what causes dh to make the wal and shm files?
Thats just sqlite i think
Journaling or something, idk how those work
i wonder what would happen if i made a read only blank file with those names
I doubt it would be happy
me too
but
deleting it gets it to recognize it
I am blasting it with 16 cores and it works fine so far
i was just letting it sit
don't have to actively move around it just happens
Definitely for journaling and for in-flight data.
I very much doubt its bazzites fault
I would assume its your modpack or your cpu has a fault/instabilities
if i knew what it could be it would be easier to wait 10 min every time
!binary
Try a binary search and figure out which mod is causing it.
So disable half of the mods, see if issue is still there, if yes disable half again etc etc until you find the mod that's causing the issue.
Can try that, its pretty fast
i already do that
the slow part is the waiting for it to be made
and since idk how long it will take id probably be waiting for much longer than i should
Do you have a modpack that we can test this with?
it's a custom one so id have to do like a dropbox
If you use prism you can export it as a mrpack or in a other format
ah okay
give me a few I'm couple min from home walking my dog
Its 5:30 am, I'm going to sleep lol
@hardester (GMT+8)
let the bed bugs bite
One thing I will say is that it generates the two additional files as intended on my system. Will leave it running for a little while to see if it starts showing issues later on.

it creates all 3 at the same time?
One thing I will say is that I'm not a big fan of Dolphin.
Well, that's how sqlite should operate.
cuz for me it only creates the sqlite and then the other two later on are when i know it wont work when i reload

delete sqlite, load game, save n quit, and thats all it generates
For sanity check, in a new world, with only Distant Horizons installed (and possibly Sodium), does it generate only the sqlite file or all 3 files?
hold on im trying to time it
until it makes the other 2
Bazzite on Hyper-V not capturing mouse input is annoying. I can't turn in-game because the mouse acts more like a pointer than an actual mouse.
:yes:
less than5 minutes
like4:50
Seems like mine generates right as the world loads.

Something about your setup is causing those two files to generate late for unknown reasons.
they generate
with dh, sodium, and indium
That's a step in the right direction. That leaves us with only mod conflict to blame.
this is odd
cuz u installed all the same mods
I have legacy4j disabled since for some reason I can't create worlds without it kicking me for failing to conenct to a server.
that's rly weird
Oop, re-enabling legacy4j and the other 2 files are not generating.

I'm actually wondering if l4j is causing it
cuz if i quit without saving itll be fine on reload with the wal and shm
so something i noticed is that the creation date for shm and wal were the same as the sqlite even tho they very much werent there at the same time
wonderes if it was in a temp location
i found a setting in l4j called "save cache" and when i disable it, it works
it generates immediately
i can save n quit and reload
I'll give it some time before marking as complete just in case but i think that was it
Everything sure seem to point towards legacy4j.
legacy4j allows you to exit without saving? That's interesting.
yea its a legacy edition feature
Assuming legacy4j stores world data in a cache, and merge them to the world data when exit and saving, this might cause some undefined interaction with Distant Horizons, especially when it need its data to be consistent.
Either way, glad we've found the potential suspect.
yea i keep quiting and reloading with no issues
i asked in the server where it would be located but i doubt imma get an answer so id either have to figure it out myself or just forget ab it and never use save cache
Now we should test if it happens outside bazzite