Open clarencesampang opened 1 week ago
I have no idea how unmined is displaying that. I am tempted to say it is a bug in unmined.
LevelDB works by adding entries to the database. A deletion doesn't actually delete the data it just adds another entry saying it is deleted. The ghost chunks have been marked as deleted in the database but the data hasn't been removed. Somehow unmined is displaying that data anyway.
This is a photo after unzipping.
After opening and closing the database with our LevelDB library the chunks are somehow visible again.
from leveldb import LevelDB
db = LevelDB(db_path)
db.close()
After running compaction the chunk data is actually deleted from the database and unmined can no longer display it.
from leveldb import LevelDB
db = LevelDB(db_path)
db.compact()
db.close()
As far as I can see Amulet and our LevelDB library are working as intended. I would suggest filing a bug with the Unmined developer.
Bug Report
Current Behaviour:
Amulet does not completely delete chunks and instead leaves residue data that can be seen in mapping apps like Unmined.
Expected behavior:
Deleting chunks should also delete the data and files of that chunk. And in turn, it should also lower the world's file size and that chunk must be blank, with no residue data, in mapping apps such as Unmined. I believe that was the case before?
Steps To Reproduce:
These are the exact steps I took to recreate this issue.
Environment:
Additional context
I opened a question on Discord about this issue and I was told to open a bug report. You can find the question here. I've also added the world I tested with below, in the Worlds section.
Attachments
See
Screenshots
See attached files above.
Worlds
OZ6UtOHg4a0=.zip