mojira.dev
BDS-5554

DBStorage chain is invalid. Unable to start previously working server

Hi there, I'm having an issue with my server that I was hosting on a personal Linux VM, it was previously working without any issues and randomly stopped working. 

Whenever trying to start my own private server with my world, I get the error:

[2020-05-20 19:43:26 ERROR] DBStorage chain is invalid. Possibly encryption-related, or bad DBStorageConfig passed. Reason: Unable to decipher/decrypt LevelDB.
[2020-05-20 19:43:26 ERROR] Network port occupied, can't start server.

 

Creating a new world doesn't cause any issues however when I attempt to change the server name in the server.properties to my original world, this error appears. There is no other application on the same port, and changing the host port has no effect. 

 

 

EDIT: Seems the issue comes down to being a corruption problem, make sure you have backups....

Attachments

Comments 29

[media][media][media][media][media]

Have you tried to apply a marketplace pack to the world? That error usually occurs when attempting to use encrypted marketplace packs on a BDS server.

Have you tried to apply a marketplace pack to the world? That error usually occurs when attempting to use encrypted marketplace packs on a BDS server.

No not at all, I had kept everything vanilla and didn't change anything between the time it worked and didn't work besides installing linux updates that I did after a server restart on my VM.

No not at all, I had kept everything vanilla and didn't change anything between the time it worked and didn't work besides installing linux updates that I did after a server restart on my VM.

19 more comments

I managed to recover my world, after a fair bit of trial and error. 😃

I made note of the last LDB file which had data in it (111116.ldb) and renamed the 0-byte MANIFEST-111120 to MANIFEST-111116. I then edited the 0-byte CURRENT file to contain "MANIFEST-111116". Upon starting my Bedrock server, it provided a warning that the database was corrupt, but it subsequently repaired it:

[2020-05-27 21:09:42 INFO] Starting Server
[2020-05-27 21:09:42 INFO] Version 1.14.60.5
[2020-05-27 21:09:42 INFO] Session ID 4e3ddebe-963a-411e-a90d-08542c93ce9a
[2020-05-27 21:09:42 INFO] Level Name: Bedrock level
[2020-05-27 21:09:42 INFO] Game mode: 0 Survival
[2020-05-27 21:09:42 INFO] Difficulty: 1 EASY
[2020-05-27 21:09:42 INFO] opening worlds/Bedrock level/db
[2020-05-27 21:09:42 WARN] LevelDB worlds/Bedrock level/db status NOT OK(Corruption: no meta-nextfile entry in descriptor). Trying repair.
[2020-05-27 21:09:51 INFO] IPv4 supported, port: 19132
[2020-05-27 21:09:51 INFO] IPv6 not supported
[2020-05-27 21:09:51 INFO] IPv4 supported, port: 55936
[2020-05-27 21:09:51 INFO] IPv6 not supported
[2020-05-27 21:09:52 INFO] Server started.
[media]

Naturally, I'll work to prevent this from happening in the future by making daily backups, but I'm still unsure as to what the underlying cause of the DB corruption was. I've seen an increased number of reports related to v1.14.60 worlds becoming corrupted due to non-graceful shutdowns of the game/BDS instance (eg. MCPE-62153, BDS-4597), so I'd be interested to know if there were any functional changes made to LevelDB as part of the release.

One cause of this problem I discovered was when trying to recover worlds, I had permissions set wrong on the recovered world folder. Use chown to make sure the permissions are set for the user that Minecraft loads under. An easy way to test if this is the problem is to use sudo when running the ./start.sh command. The game should start, but to check its progress you'll have to use sudo again when running 'screen -r minecraft' and it does cause problems with connecting over lan. However, this at least will inform you as to whether or not it's a permissions issue.

One cause of this problem I discovered was when trying to recover worlds, I had permissions set wrong on the recovered world folder. Use chown to make sure the permissions are set for the user that Minecraft loads under. An easy way to test if this is the problem is to use sudo when running the ./start.sh command. The game should start, but to check its progress you'll have to use sudo again when running 'screen -r minecraft' and it does cause problems with connecting over lan. However, this at least will inform you as to whether or not it's a permissions issue.

I'm going to close this report off as it extends beyond the bounds of a bug report and there isn't really anything here we could raise that isn't covered by existing reports.

For the issue of corruptions on unclean shutdowns, Mojang is aware of the issue and it is covered by a number of reports over in the MCPE project. The issue is one that traverses all 3 projects (MCPE, Realms and BDS) and in general those are usually tracked over in the Bedrock project for the visibility.

The only real workaround at the moment is to ensure the server is stopped properly and regularly backed up.

As far as Drews queries regarding the save process of BDS, the bug tracker is run by volunteers so unfortunately we have no more information than you do in this regard.

I'm going to close this report off as it extends beyond the bounds of a bug report and there isn't really anything here we could raise that isn't covered by existing reports.

For the issue of corruptions on unclean shutdowns, Mojang is aware of the issue and it is covered by a number of reports over in the MCPE project. The issue is one that traverses all 3 projects (MCPE, Realms and BDS) and in general those are usually tracked over in the Bedrock project for the visibility.

The only real workaround at the moment is to ensure the server is stopped properly and regularly backed up.

As far as Drews queries regarding the save process of BDS, the bug tracker is run by volunteers so unfortunately we have no more information than you do in this regard.

Trivi

(Unassigned)

Unconfirmed

Retrieved