overviewer/Minecraft-Overviewer — Issue #593: Overviewer hangs on unsupported chunk compression type
Author: Huns
Created: 2012-01-31 10:28:04+00:00
State: open

When Overviewer is unable to open a chunk due to unsupported chunk compression type (presumably because it's corrupted), rather than continuing past that chunk or exiting, it hangs. This causes an issue in environments where it runs automatically and unattended. The corrupt chunk may not be anywhere a player is likely to go, and so it may not be fixed for a long time (if ever), but the map update process freezes indefinitely. Because it's running in an automatic way, there is no immediate indication that anything has gone wrong - the map simply isn't being updated.

Expected behavior: Either pretend the chunk is empty, or exit back to the OS with an error code.

Here's the output:

$ python overviewer.py --rendermodes=lighting,night,spawn,cave --processes 3 --regionlist=REGIONLIST world-tmp overviewer

2012-01-31 05:15:01 Welcome to Minecraft Overviewer!
2012-01-31 05:15:04 Scanning regions
2012-01-31 05:15:04 Scanning chunks
2012-01-31 05:15:04 Rendering the following tilesets: lighting,night,spawn,cave
2012-01-31 05:15:04 Scanning chunks and determining tiles to update for each rendermode requested.
2012-01-31 05:15:04 Doing 4 scans in 3 worker processes
2012-01-31 05:15:06 All scans finished. 9696 total tiles need to be rendered at the highest level
2012-01-31 05:15:13
2012-01-31 05:15:13 Rendering highest zoom level of tiles now.
2012-01-31 05:15:13 Rendering 4 rendermodes
2012-01-31 05:15:13 Started 3 worker processes
2012-01-31 05:15:13 There are 9696 tiles to render at this level
2012-01-31 05:15:13 There are 8 total levels
2012-01-31 05:15:13 0/9696 (0.0%) tiles complete on level 1/8
2012-01-31 05:15:27 400/9696 (4.1%) tiles complete on level 1/8
2012-01-31 05:15:39 800/9696 (8.3%) tiles complete on level 1/8
*******************************************************************************
2012-01-31 05:15:40 W Error opening chunk (-13, 2) in world-tmp/region/r.-1.0.mcr. It may be corrupt. Unsupported chunk compression type: 167
*******************************************************************************
2012-01-31 05:15:41 W Error opening chunk (-13, 2) in world-tmp/region/r.-1.0.mcr. It may be corrupt. Unsupported chunk compression type: 167
*******************************************************************************
2012-01-31 05:15:41 W Error opening chunk (-13, 2) in world-tmp/region/r.-1.0.mcr. It may be corrupt. Unsupported chunk compression type: 167
*******************************************************************************
2012-01-31 05:15:43 W Error opening chunk (-13, 2) in world-tmp/region/r.-1.0.mcr. It may be corrupt. Unsupported chunk compression type: 167
*******************************************************************************
2012-01-31 05:15:43 W Error opening chunk (-13, 2) in world-tmp/region/r.-1.0.mcr. It may be corrupt. Unsupported chunk compression type: 167
*******************************************************************************
2012-01-31 05:15:43 W Error opening chunk (-13, 2) in world-tmp/region/r.-1.0.mcr. It may be corrupt. Unsupported chunk compression type: 167
*******************************************************************************
2012-01-31 05:15:45 W Error opening chunk (-13, 2) in world-tmp/region/r.-1.0.mcr. It may be corrupt. Unsupported chunk compression type: 167
*******************************************************************************
2012-01-31 05:15:45 W Error opening chunk (-13, 2) in world-tmp/region/r.-1.0.mcr. It may be corrupt. Unsupported chunk compression type: 167
*******************************************************************************
2012-01-31 05:15:45 W Error opening chunk (-13, 2) in world-tmp/region/r.-1.0.mcr. It may be corrupt. Unsupported chunk compression type: 167