New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Chunk errors upon relog #510

Closed
Mystiflow opened this Issue Jun 28, 2017 · 4 comments

Comments

Projects
None yet
4 participants
@Mystiflow
Contributor

Mystiflow commented Jun 28, 2017

Hi,

When I re-logged into a Glowstone server I created yesterday I was presented with the error messages I have attached below. Unfortunately I do not have any reproduction steps as I do not know the root cause other than leaving my computer idle for 14 hours remaining logged in to the server.

My world was generated using Glowstone and not imported from any other Minecraft server impls. I also tried to repeat the issue by relogging again and it did not occur a second time.

2017/06/28 10:31:51 [INFO] Mystiflow issued command: /gamemode s
2017/06/28 10:32:03 [INFO] Mystiflow [/127.0.0.1:57433] lost connection
2017/06/28 10:32:03 [INFO] §eMystiflow left the game
2017/06/28 10:32:07 [SEVERE] Error while loading chunk (3,15)
java.util.zip.ZipException: unknown compression method
	at java.util.zip.InflaterInputStream.read(Unknown Source)
	at java.io.BufferedInputStream.fill(Unknown Source)
	at java.io.BufferedInputStream.read(Unknown Source)
	at java.io.FilterInputStream.read(Unknown Source)
	at java.io.DataInputStream.readUnsignedByte(Unknown Source)
	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:72)
	at net.glowstone.chunk.ChunkManager.loadChunk(ChunkManager.java:150)
	at net.glowstone.chunk.ChunkManager.loadChunk(ChunkManager.java:144)
	at net.glowstone.chunk.ChunkManager.populateChunk(ChunkManager.java:217)
	at net.glowstone.chunk.ChunkManager.forcePopulation(ChunkManager.java:250)
	at net.glowstone.entity.GlowPlayer.streamBlocks(GlowPlayer.java:749)
	at net.glowstone.entity.GlowPlayer.join(GlowPlayer.java:385)
	at net.glowstone.net.GlowSession.setPlayer(GlowSession.java:360)
	at net.glowstone.net.handler.login.EncryptionKeyResponseHandler$ClientAuthCallback.lambda$done$0(EncryptionKeyResponseHandler.java:153)
	at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
	at java.util.concurrent.FutureTask.run(Unknown Source)
	at net.glowstone.scheduler.GlowTask.run(GlowTask.java:167)
	at net.glowstone.scheduler.GlowScheduler.pulse(GlowScheduler.java:152)
	at net.glowstone.scheduler.GlowScheduler.lambda$start$0(GlowScheduler.java:83)
	at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
	at java.util.concurrent.FutureTask.runAndReset(Unknown Source)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(Unknown Source)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
2017/06/28 10:32:07 [SEVERE] Error while loading chunk (0,22)
java.io.IOException: Invalid length: 7904493 > 4096
	at net.glowstone.io.anvil.RegionFile.getChunkDataInputStream(RegionFile.java:208)
	at net.glowstone.io.anvil.AnvilChunkIoService.read(AnvilChunkIoService.java:68)
	at net.glowstone.chunk.ChunkManager.loadChunk(ChunkManager.java:150)
	at net.glowstone.chunk.GlowChunk.load(GlowChunk.java:199)
	at net.glowstone.generator.populators.StructurePopulator.populate(StructurePopulator.java:36)
	at net.glowstone.chunk.ChunkManager.populateChunk(ChunkManager.java:235)
	at net.glowstone.chunk.ChunkManager.forcePopulation(ChunkManager.java:250)
	at net.glowstone.entity.GlowPlayer.streamBlocks(GlowPlayer.java:749)
	at net.glowstone.entity.GlowPlayer.join(GlowPlayer.java:385)
	at net.glowstone.net.GlowSession.setPlayer(GlowSession.java:360)
	at net.glowstone.net.handler.login.EncryptionKeyResponseHandler$ClientAuthCallback.lambda$done$0(EncryptionKeyResponseHandler.java:153)
	at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
	at java.util.concurrent.FutureTask.run(Unknown Source)
	at net.glowstone.scheduler.GlowTask.run(GlowTask.java:167)
	at net.glowstone.scheduler.GlowScheduler.pulse(GlowScheduler.java:152)
	at net.glowstone.scheduler.GlowScheduler.lambda$start$0(GlowScheduler.java:83)
	at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
	at java.util.concurrent.FutureTask.runAndReset(Unknown Source)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(Unknown Source)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
2017/06/28 10:32:08 [SEVERE] Error while loading chunk (11,16)
java.io.IOException: Unknown version: 89
	at net.glowstone.io.anvil.RegionFile.getChunkDataInputStream(RegionFile.java:231)
	at net.glowstone.io.anvil.AnvilChunkIoService.read(AnvilChunkIoService.java:68)
	at net.glowstone.chunk.ChunkManager.loadChunk(ChunkManager.java:150)
	at net.glowstone.chunk.GlowChunk.load(GlowChunk.java:199)
	at net.glowstone.generator.populators.StructurePopulator.populate(StructurePopulator.java:36)
	at net.glowstone.chunk.ChunkManager.populateChunk(ChunkManager.java:235)
	at net.glowstone.chunk.ChunkManager.forcePopulation(ChunkManager.java:250)
	at net.glowstone.entity.GlowPlayer.streamBlocks(GlowPlayer.java:749)
	at net.glowstone.entity.GlowPlayer.join(GlowPlayer.java:385)
	at net.glowstone.net.GlowSession.setPlayer(GlowSession.java:360)
	at net.glowstone.net.handler.login.EncryptionKeyResponseHandler$ClientAuthCallback.lambda$done$0(EncryptionKeyResponseHandler.java:153)
	at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
	at java.util.concurrent.FutureTask.run(Unknown Source)
	at net.glowstone.scheduler.GlowTask.run(GlowTask.java:167)
	at net.glowstone.scheduler.GlowScheduler.pulse(GlowScheduler.java:152)
	at net.glowstone.scheduler.GlowScheduler.lambda$start$0(GlowScheduler.java:83)
	at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
	at java.util.concurrent.FutureTask.runAndReset(Unknown Source)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(Unknown Source)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
2017/06/28 10:32:08 [INFO] Mystiflow [/127.0.0.1:57631] connected, UUID: 4941651a-9056-406c-83d0-275932cb0870
2017/06/28 10:32:08 [INFO] §eMystiflow joined the game
@gdude2002

This comment has been minimized.

Member

gdude2002 commented Jun 28, 2017

Hmm, that's an odd one. Have you noticed any negative effects as a result of this?

@Mystiflow

This comment has been minimized.

Contributor

Mystiflow commented Jun 28, 2017

Not so far, will post back if I do.

@momothereal

This comment has been minimized.

Member

momothereal commented Dec 2, 2017

@Mystiflow any updates on this issue?

mastercoms added a commit that referenced this issue Dec 3, 2017

Region file init improvements
Cache the region file's initial length
Only seek to the end of file when needed
Optimized branching for grows
Alignment grows now grow the file to a multiple of 4KB, rather than the bytes already in a 4KB block (fixes #510, fixes #199)
Use constants and non-hex values for readability
@mastercoms

This comment has been minimized.

Member

mastercoms commented Dec 3, 2017

Fixed in 98aeb19

@mastercoms mastercoms closed this Dec 3, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment