GlowstoneMC / Glowstone

A fast, customizable and compatible open source server for Minecraft: Java Edition
https://glowstone.net
Other
1.9k stars 273 forks source link

Chunk unknown compression method #351

Closed FastFelix771 closed 7 years ago

FastFelix771 commented 8 years ago

3 different exceptions are getting thrown (for different chunks, too!) after the server loads chunks, that have been saved with errors before: (maybe happens to sucessful saved chunks, too? not 100% sure)

2016/08/22 22:48:10 [SEVERE] Error while loading chunk (88,103)
java.util.zip.ZipException: unknown compression method
    at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:164)
    at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:122)
    at java.io.FilterInputStream.read(FilterInputStream.java:83)
    at java.io.DataInputStream.readUnsignedByte(DataInputStream.java:288)
    at net.glowstone.util.nbt.NBTInputStream.readCompound(NBTInputStream.java:70)
    at net.glowstone.util.nbt.NBTInputStream.readCompound(NBTInputStream.java:58)
    at net.glowstone.io.anvil.AnvilChunkIoService.read(AnvilChunkIoService.java:67)
    at net.glowstone.ChunkManager.loadChunk(ChunkManager.java:147)
    at net.glowstone.GlowChunk.load(GlowChunk.java:188)
    at net.glowstone.GlowChunk.load(GlowChunk.java:181)
    at net.glowstone.GlowChunk.getSection(GlowChunk.java:282)
    at net.glowstone.GlowChunk.getType(GlowChunk.java:322)
    at net.glowstone.block.GlowBlock.getTypeIdNoCache(GlowBlock.java:192)
    at net.glowstone.block.GlowBlock.getType(GlowBlock.java:178)
    at net.glowstone.block.blocktype.BlockGrass.updateBlock(BlockGrass.java:120)
    at net.glowstone.GlowWorld.updateBlocksInSection(GlowWorld.java:427)
    at net.glowstone.GlowWorld.updateBlocksInActiveChunks(GlowWorld.java:409)
    at net.glowstone.GlowWorld.pulse(GlowWorld.java:361)
    at net.glowstone.scheduler.WorldScheduler$WorldThread.run(WorldScheduler.java:139)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
2016/08/22 22:48:24 [SEVERE] Error while loading chunk (88,98)
java.io.IOException: Unknown version: 24
    at net.glowstone.io.anvil.RegionFile.getChunkDataInputStream(RegionFile.java:210)
    at net.glowstone.io.anvil.AnvilChunkIoService.read(AnvilChunkIoService.java:63)
    at net.glowstone.ChunkManager.loadChunk(ChunkManager.java:147)
    at net.glowstone.GlowChunk.load(GlowChunk.java:188)
    at net.glowstone.GlowChunk.load(GlowChunk.java:181)
    at net.glowstone.GlowChunk.getSection(GlowChunk.java:282)
    at net.glowstone.GlowChunk.getType(GlowChunk.java:322)
    at net.glowstone.block.GlowBlock.getTypeIdNoCache(GlowBlock.java:192)
    at net.glowstone.block.GlowBlock.getType(GlowBlock.java:178)
    at net.glowstone.block.blocktype.BlockGrass.updateBlock(BlockGrass.java:120)
    at net.glowstone.GlowWorld.updateBlocksInSection(GlowWorld.java:427)
    at net.glowstone.GlowWorld.updateBlocksInActiveChunks(GlowWorld.java:409)
    at net.glowstone.GlowWorld.pulse(GlowWorld.java:361)
    at net.glowstone.scheduler.WorldScheduler$WorldThread.run(WorldScheduler.java:139)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
2016/08/22 22:48:24 [SEVERE] Error while loading chunk (70,108)
java.io.IOException: Invalid length: 167241968 > 8192
    at net.glowstone.io.anvil.RegionFile.getChunkDataInputStream(RegionFile.java:196)
    at net.glowstone.io.anvil.AnvilChunkIoService.read(AnvilChunkIoService.java:63)
    at net.glowstone.ChunkManager.loadChunk(ChunkManager.java:147)
    at net.glowstone.GlowChunk.load(GlowChunk.java:188)
    at net.glowstone.GlowChunk.load(GlowChunk.java:181)
    at net.glowstone.GlowChunk.getSection(GlowChunk.java:282)
    at net.glowstone.GlowChunk.getType(GlowChunk.java:322)
    at net.glowstone.block.GlowBlock.getTypeIdNoCache(GlowBlock.java:192)
    at net.glowstone.block.GlowBlock.getType(GlowBlock.java:178)
    at net.glowstone.block.blocktype.BlockGrass.updateBlock(BlockGrass.java:120)
    at net.glowstone.GlowWorld.updateBlocksInSection(GlowWorld.java:427)
    at net.glowstone.GlowWorld.updateBlocksInActiveChunks(GlowWorld.java:409)
    at net.glowstone.GlowWorld.pulse(GlowWorld.java:361)
    at net.glowstone.scheduler.WorldScheduler$WorldThread.run(WorldScheduler.java:139)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745) 
FastFelix771 commented 8 years ago

It also seem to affect successfully saved chunks:

2016/08/23 21:39:48 [SEVERE] Error while loading chunk (83,98)
java.io.IOException: Unknown version: 34
    at net.glowstone.io.anvil.RegionFile.getChunkDataInputStream(RegionFile.java:210)
    at net.glowstone.io.anvil.AnvilChunkIoService.read(AnvilChunkIoService.java:63)
    at net.glowstone.ChunkManager.loadChunk(ChunkManager.java:147)
    at net.glowstone.GlowChunk.load(GlowChunk.java:188)
    at net.glowstone.GlowChunk.load(GlowChunk.java:181)
    at net.glowstone.GlowChunk.getSection(GlowChunk.java:282)
    at net.glowstone.GlowChunk.getType(GlowChunk.java:322)
    at net.glowstone.block.GlowBlock.getTypeIdNoCache(GlowBlock.java:192)
    at net.glowstone.block.GlowBlock.getType(GlowBlock.java:178)
    at net.glowstone.block.blocktype.BlockGrass.updateBlock(BlockGrass.java:120)
    at net.glowstone.GlowWorld.updateBlocksInSection(GlowWorld.java:427)
    at net.glowstone.GlowWorld.updateBlocksInActiveChunks(GlowWorld.java:409)
    at net.glowstone.GlowWorld.pulse(GlowWorld.java:361)
    at net.glowstone.scheduler.WorldScheduler$WorldThread.run(WorldScheduler.java:139)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)

What is this unknown version thingy? Is there a way to fix, or ignore this? The map has been built in 1.7, 1.8 and 1.10.2 - that could explain, why the version errors differ (24, 34, etc.)

mastercoms commented 7 years ago

Pretty sure this shouldn't occur. Reopen or comment if it does.