Corruption of playerfiles

Discussion in 'Bukkit Help' started by Bakuhatsu, Jun 6, 2012.

Thread Status:
Not open for further replies.
  1. Offline

    Bakuhatsu

    I've since quite recently started getting an issue where playerfiles randomly seems to get some form of corruption, the file looks healthy when using NBTedit but once the person logs into the server everything just freezes down and server refuse further connections.

    And no, server does not run out of memory as the error might say, it is totally due to a player with a corrupted playerfile trying to login.

    Console output:
    Code:
     java.lang.OutOfMemoryError: Java heap space
        at java.util.Arrays.copyOf(Arrays.java:2746)
        at java.util.ArrayList.ensureCapacity(ArrayList.java:187)
        at java.util.ArrayList.add(ArrayList.java:378)
        at net.minecraft.server.NBTTagList.load(SourceFile:37)
        at net.minecraft.server.NBTBase.b(SourceFile:77)
        at net.minecraft.server.NBTTagCompound.load(NBTTagCompound.java:53)
        at net.minecraft.server.NBTBase.b(SourceFile:77)
        at net.minecraft.server.NBTTagCompound.load(NBTTagCompound.java:53)
        at net.minecraft.server.NBTBase.b(SourceFile:77)
        at net.minecraft.server.NBTCompressedStreamTools.a(SourceFile:75)
        at net.minecraft.server.ChunkRegionLoader.a(ChunkRegionLoader.java:49)
        at net.minecraft.server.ChunkProviderServer.loadChunk(ChunkProviderServer.java:135)
        at net.minecraft.server.ChunkProviderServer.getChunkAt(ChunkProviderServer.java:78)
        at net.minecraft.server.PlayerInstance.<init>(PlayerInstance.java:26)
        at net.minecraft.server.PlayerManager.a(PlayerManager.java:60)
        at net.minecraft.server.PlayerManager.movePlayer(PlayerManager.java:156)
        at net.minecraft.server.ServerConfigurationManager.d(ServerConfigurationManager.java:169)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:412)
        at net.minecraft.server.Packet10Flying.handle(SourceFile:126)
        at net.minecraft.server.NetworkManager.b(NetworkManager.java:229)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:113)
        at net.minecraft.server.NetworkListenThread.a(NetworkListenThread.java:78)
        at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:567)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:459)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:492)
    Unexpected exception
    java.lang.OutOfMemoryError: Java heap space
        at java.util.Arrays.copyOf(Arrays.java:2746)
        at java.util.ArrayList.ensureCapacity(ArrayList.java:187)
        at java.util.ArrayList.add(ArrayList.java:378)
        at net.minecraft.server.NBTTagList.load(SourceFile:37)
        at net.minecraft.server.NBTBase.b(SourceFile:77)
        at net.minecraft.server.NBTTagCompound.load(NBTTagCompound.java:53)
        at net.minecraft.server.NBTBase.b(SourceFile:77)
        at net.minecraft.server.NBTTagCompound.load(NBTTagCompound.java:53)
        at net.minecraft.server.NBTBase.b(SourceFile:77)
        at net.minecraft.server.NBTCompressedStreamTools.a(SourceFile:75)
        at net.minecraft.server.ChunkRegionLoader.a(ChunkRegionLoader.java:49)
        at net.minecraft.server.ChunkProviderServer.loadChunk(ChunkProviderServer.java:135)
        at net.minecraft.server.ChunkProviderServer.getChunkAt(ChunkProviderServer.java:78)
        at net.minecraft.server.PlayerInstance.<init>(PlayerInstance.java:26)
        at net.minecraft.server.PlayerManager.a(PlayerManager.java:60)
        at net.minecraft.server.PlayerManager.movePlayer(PlayerManager.java:156)
        at net.minecraft.server.ServerConfigurationManager.d(ServerConfigurationManager.java:169)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:412)
        at net.minecraft.server.Packet10Flying.handle(SourceFile:126)
        at net.minecraft.server.NetworkManager.b(NetworkManager.java:229)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:113)
        at net.minecraft.server.NetworkListenThread.a(NetworkListenThread.java:78)
        at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:567)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:459)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:492)
    However! I might know the reason even but just knowing the reason is not everything I really need help with. Once after restoring from a "rdiff-backup" it did restore all files but playerfiles somehow didn't get properly restored. They did appear in the folders and using NBTedit did show their proper contents but according to server they were empty. But that was a few weeks ago.

    The solution here is likely just to reset every playerfile but since there recently was an unwilling reset I rather would not want to do that, and even though I do a manual backup there will be way too much work restoring everyone's files manually as there is a quite large total amount of people.

    So... I mainly wonder, is there any software or plugin out there that can copy all contents from a .dat file into example an .yml file... which later can be used to restore a new .dat file? I do have multiverse-inventories, it does put everything into an .yml file, but that plugin can't really interact with the .dat files, if even possible. (Aka, remove .dat file, plugin automatically restore from .yml file?)
     
Thread Status:
Not open for further replies.

Share This Page