{"record":{"id":"e63db69a8d999367","repo":"Pumpkin-MC/Pumpkin","slug":"failed-reading-chunk-status-0","errorCode":null,"errorMessage":"Failed reading chunk status {0}","messagePattern":"Failed reading chunk status (.+?)","errorType":"error_code","errorClass":"ChunkParsingError","httpStatus":null,"severity":"error","filePath":"crates/pumpkin-world/src/chunk/mod.rs","lineNumber":923,"sourceCode":"    }\n\n    #[must_use]\n    pub fn get_highest_non_empty_subchunk(&self) -> usize {\n        self.section\n            .block_sections\n            .read()\n            .unwrap_or_else(std::sync::PoisonError::into_inner)\n            .iter()\n            .enumerate()\n            .rev()\n            .find(|(_, sub)| !sub.has_only_air())\n            .map_or(0, |(idx, _)| idx)\n    }\n}\n\n#[derive(Error, Debug)]\npub enum ChunkParsingError {\n    #[error(\"Failed reading chunk status {0}\")]\n    FailedReadStatus(pumpkin_nbt::Error),\n    #[error(\"The chunk isn't generated yet\")]\n    ChunkNotGenerated,\n    #[error(\"Error deserializing chunk: {0}\")]\n    ErrorDeserializingChunk(String),\n}\n\n#[derive(Error, Debug)]\npub enum ChunkSerializingError {\n    #[error(\"Error serializing chunk: {0}\")]\n    ErrorSerializingChunk(pumpkin_nbt::Error),\n}\n\n#[cfg(test)]\nmod tests {\n    use super::ChunkSections;\n    use crate::chunk::palette::BlockPalette;\n    use pumpkin_data::{Block, block_properties::has_random_ticks};","sourceCodeStart":905,"sourceCodeEnd":941,"githubUrl":"https://github.com/Pumpkin-MC/Pumpkin/blob/8d4639e25a57c15e47448ec327c780d41bbf2356/crates/pumpkin-world/src/chunk/mod.rs#L905-L941","documentation":"Variant `FailedReadStatus` of `ChunkParsingError` in pumpkin-world. It wraps a `pumpkin_nbt::Error` raised while reading the chunk's `Status` NBT field from serialized chunk data. The library throws it when the chunk status tag cannot be read during chunk deserialization (e.g. loading a chunk from anvil/region storage).","triggerScenarios":"Deserializing a chunk whose NBT payload lacks a readable Status field, or whose Status tag has an unexpected type, causing pumpkin_nbt to fail.","commonSituations":"Region files written by other Minecraft versions or servers, corrupted world saves, manually edited chunk data.","solutions":["Inspect the wrapped pumpkin_nbt::Error for the failing tag; check the chunk's NBT structure","Verify the world was not produced by an incompatible Minecraft/server version","Delete the affected chunk to let the server regenerate it"],"exampleFix":null,"handlingStrategy":"try-catch","validationCode":null,"typeGuard":"matches!(err, ChunkParsingError::FailedReadStatus(_))","tryCatchPattern":"match chunk::parse(bytes) {\n    Err(ChunkParsingError::FailedReadStatus(nbt_err)) => warn!(\"bad chunk status NBT: {nbt_err}; regenerating\"),\n    other => other?,\n}","preventionTips":["Do not mix region files across incompatible server/game versions","Stop the server cleanly before copying world directories","Validate world files after crashes before resuming"],"tags":["nbt","deserialization","chunks","parsing"],"backgroundTag":"json-unmarshal-failed","analyzedSha":"8d4639e25a57c15e47448ec327c780d41bbf2356","analyzedAt":"2026-09-09T15:32:22.916Z","contentChangedAt":"2026-09-09T15:32:22.916Z","schemaVersion":2},"datasetVersion":"2026-09-16T04:17:20.429Z"}