Shopkeepers

Shopkeepers

2M Downloads

save.yml wipe

blablubbabcDEV opened this issue ยท 10 comments

commented

Migrated from: https://dev.bukkit.org/projects/shopkeepers/issues/352

Originally posted by MasterMithrandir (Nov 22, 2015):

Spigot version: 1.8.8
Shopkeepers version: 1.65My save.yml file got wiped today for no aparent reason. All I did was restart the server a couple of times, and all saves dissapeared :S
This has already happened to me in the past... it really sucks.Suggestion: SQL suport could be more reliable than that .yml file.

commented

Originally commented by blablubbabc (Nov 22, 2015):

There is a spigot bug which causes that whenever a custom head item is saved it wipes the save file.. You should get an error stacktrace in the log though when this happens. See the related ticket for that.

I am not aware that there are any other reasons for this to happen currently.
SQL is really no option here because it would be not worth the trouble switching to that.

        Edited Nov 22, 2015
commented

Originally commented by MasterMithrandir (Nov 22, 2015):

[at]blablubbabc:
Hi. I see there have been some similar issues, and that you have already opened a ticket on Spigot about them.
But I can't find a single error justifying why this happened. This happened yesterday, and I've checked all the logs since day 20.
All I can say is that I was a little rought on the server, as I was fixing some other bugs, I restarted the server at least 20 times successively due to changes.
I've never had this issue due to certain items being stored in shops, this usually happens during shopkeeper updates, or important maintainances which require constant restarts like yesterday.
I'm guessing I should improve my backuping system, do you have any suggestions? :) I'm using AutoSaveWorld which has some automatic backup features, but sending backups to dropbox is a bit complicated.

commented

Originally commented by I9hdkill (Nov 25, 2015):

Yes, saving a custom playerhead wipes the config

commented

Originally commented by blablubbabc (Nov 27, 2015):

[at]MasterMithrandir:
Usually, normal head items have an 'owner' property (some player name) and the texture gets fetched from this 'owner' player skin.

With 'custom heads' I mean head items which don't have any owner property, but still have their texture property customly set (there are some online tools to generate this texture property from image files for example).

Normal heads (which worked fine pre v1.66) should still work find on v1.66. In v 1.66 I am basically checking if the head item has no 'owner' property (no player backing up the texture).

        Edited Nov 27, 2015
commented

Originally commented by MasterMithrandir (Nov 28, 2015):

[at]blablubbabc:
Aha, I see...
So all the usual vanilla mob heads obtainable through creative are included as custom heads... I just noticed that applying 1.66 deleted some of my head shops's trades xD No big fuss really, but I hope you can get this under control eventually :)

commented

Originally commented by blablubbabc (Nov 28, 2015):

[at]MasterMithrandir:
Oh, right. I didn't really think about the possibility that normal mob heads might have no owner property as well.. But I guess I could check for that, so that only player heads are affected by this change in v1.66. Sorry for that.
Edit: Should be fixed in v1.67. Untested though.

        Edited Nov 28, 2015
commented

Originally commented by MasterMithrandir (Nov 29, 2015):

[at]blablubbabc:
No problem :) Thanks.

commented

Originally commented by blablubbabc (Nov 25, 2015):

Check out v1.66.

I have finally come to add a temporary check during shopkeeper saving to exclude all trades which involve a custom head item. The plan is to remove this restriction again once the bug has been fixed in bukkit/spigot.
Regarding save-file wiping due to spam-server-reloading/restarting: I wasn't able to reproduce that.. so no idea what could have caused that..

It might be possible though that you force-stopped/crashed the server right in those few milliseconds between removing the old save file and writing the new save-file content.. In that case you might have been very unlucky.. and I suggest that you wait for the server to properly shutdown instead in the future to reduce the chance for that to happen again.

Regarding server backups: I have never set on up myself yet, however I know that on my server for example there is something running which creates daily backups of the whole system (of all files, including the minecraft server). Though I don't know exactly what software is used for that right now.
However, if you are able to install system backup software you could take a look at those here and here (german site though..).

        Edited Nov 25, 2015
commented

Originally commented by MasterMithrandir (Nov 27, 2015):

[at]blablubbabc:
What do you guys mean by "custom heads"? Do you mean just regular heads with player textures on them?
On some of my admin shops, I have some heads configured, as sellable heads. These heads have never broken my save.yml spontaneously... And I've also seen players selling my own head, which never caused any issues.
What does happen is that some heads generated with the playerheads plugin are a bit buggy (they seem to messup their data values, internal ID's or something) and therefore some trades don't work with them. (But this issue is often solved by placing the corrupt head on the ground and picking it up)
I already opened a ticket on that here a long time ago: http://dev.bukkit.org/bukkit-plugins/player-heads/tickets/72-shopkeepers/
In any case, many heads are already configured, and do not give any problems, so I'm really surprised that you mention a malfunction that I'm not experiencing. What will happen when I apply 1.66, which patches an issue with heads that I do not seem to have?

        Edited Nov 27, 2015
commented

Originally closed by blablubbabc (Nov 25, 2015)