{"record":{"id":"7f7cf237e5656b68","repo":"risingwavelabs/risingwave","slug":"serving-vnode-mapping-not-found-for-fragment-0","errorCode":null,"errorMessage":"Serving vnode mapping not found for fragment {0}","messagePattern":"Serving vnode mapping not found for fragment (.+?)","errorType":"error_code","errorClass":"BatchError","httpStatus":null,"severity":"error","filePath":"src/batch/src/error.rs","lineNumber":134,"sourceCode":"    ExternalSystemError(\n        #[from]\n        #[backtrace]\n        BatchExternalSystemError,\n    ),\n\n    // Make the ref-counted type to be a variant for easier code structuring.\n    // TODO(error-handling): replace with `thiserror_ext::Arc`\n    #[error(transparent)]\n    Shared(\n        #[from]\n        #[backtrace]\n        Arc<Self>,\n    ),\n\n    #[error(\"Empty workers found\")]\n    EmptyWorkerNodes,\n\n    #[error(\"Serving vnode mapping not found for fragment {0}\")]\n    ServingVnodeMappingNotFound(FragmentId),\n\n    #[error(\"Streaming vnode mapping has not been initialized\")]\n    StreamingVnodeMappingNotInitialized,\n\n    #[error(\"Streaming vnode mapping not found for fragment {0}\")]\n    StreamingVnodeMappingNotFound(FragmentId),\n\n    #[error(\"Not enough memory to run this query, batch memory limit is {0} bytes\")]\n    OutOfMemory(u64),\n\n    #[error(\"Failed to spill out to disk\")]\n    Spill(\n        #[from]\n        #[backtrace]\n        opendal::Error,\n    ),\n","sourceCodeStart":116,"sourceCodeEnd":152,"githubUrl":"https://github.com/risingwavelabs/risingwave/blob/6469eb736d691e8e9b8a419a57edd6429ca77417/src/batch/src/error.rs#L116-L152","documentation":"BatchError::ServingVnodeMappingNotFound: the serving-stage vnode mapping for the given fragment id is missing from the frontend's cached mapping tables. It fires when a serving query tries to route reads to compute nodes for a matview fragment whose consistent-hash distribution info was never registered, was evicted during scale-out/reschedule, or the cache is stale relative to the fragment still referenced by the plan.","triggerScenarios":"Thrown at src/batch/src/error.rs:134 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Retry after the frontend refreshes its fragment/vnode mapping cache from meta","Check meta logs to confirm the fragment exists and a serving vnode mapping was broadcast","If a matview was just created or rescheduled, re-run the query once caches converge","Report as a bug if it persists for a stable fragment id"],"exampleFix":null,"handlingStrategy":"retry","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"6469eb736d691e8e9b8a419a57edd6429ca77417","analyzedAt":"2026-09-11T21:06:21.487Z","contentChangedAt":"2026-09-11T21:06:21.487Z","schemaVersion":2},"datasetVersion":"2026-09-23T08:17:48.524Z"}