{"record":{"id":"c44d246b8f0c8761","repo":"influxdata/influxdb","slug":"failed-to-initialize-catalog-0","errorCode":null,"errorMessage":"failed to initialize catalog: {0}","messagePattern":"failed to initialize catalog: (.+?)","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"critical","filePath":"influxdb3/src/commands/serve.rs","lineNumber":144,"sourceCode":"    #[error(\"Failed to bind address\")]\n    BindAddress(#[source] std::io::Error),\n\n    #[error(\"Server error: {0}\")]\n    Server(#[source] influxdb3_server::Error),\n\n    #[error(\"Token error: {0}\")]\n    TokenError(CatalogError),\n\n    #[error(\"Write buffer error: {0}\")]\n    WriteBuffer(#[from] influxdb3_write::write_buffer::Error),\n\n    #[error(\"invalid token: {0}\")]\n    InvalidToken(#[from] hex::FromHexError),\n\n    #[error(\"failed to initialize write buffer: {0:?}\")]\n    WriteBufferInit(#[source] anyhow::Error),\n\n    #[error(\"failed to initialize catalog: {0}\")]\n    InitializeCatalog(#[source] CatalogError),\n\n    #[error(\"failed to initialize last cache: {0}\")]\n    InitializeLastCache(#[source] last_cache::Error),\n\n    #[error(\"failed to initialize distinct cache: {0:#}\")]\n    InitializeDistinctCache(#[source] influxdb3_cache::distinct_cache::ProviderError),\n\n    #[error(\"lost backend\")]\n    LostBackend,\n\n    #[error(\"lost HTTP/gRPC service\")]\n    LostHttpGrpc,\n\n    #[error(\"lost admin token recovery service\")]\n    LostAdminTokenRecovery,\n\n    #[error(\"tls requires both a cert and a key file to be passed in to work\")]","sourceCodeStart":126,"sourceCodeEnd":162,"githubUrl":"https://github.com/influxdata/influxdb/blob/06200ef96ba82c5f6727e5038a83af8e722c6875/influxdb3/src/commands/serve.rs#L126-L162","documentation":"Display message of the `Error::InitializeCatalog` variant, wrapping a `CatalogError` (#[source]) that occurred while loading or creating the catalog during serve startup. The catalog holds databases, tables, tokens, and schema metadata, so this aborts startup.","triggerScenarios":"During `influxdb3 serve`, the catalog initialization step (loading existing catalog from storage or creating a fresh one) returns a `CatalogError`.","commonSituations":"Unreadable/corrupt catalog snapshot in the object store, version mismatch between catalog format and the binary, or permission problems on local catalog files.","solutions":["Inspect the wrapped CatalogError source for the exact cause","Verify the object-store/DB holding the catalog is reachable and credentials are valid","Check for catalog format/version incompatibility after upgrading and migrate or restore from backup","Restore the catalog from a known-good backup if the stored snapshot is corrupt"],"exampleFix":"// before\n# corrupt/legacy catalog in storage -> init fails\n// after\n# restore catalog backup compatible with this binary version, then:\ninfluxdb3 serve --node-id=node1 ...","handlingStrategy":"try-catch","validationCode":null,"typeGuard":null,"tryCatchPattern":"match serve_result {\n    Err(Error::InitializeCatalog(src)) => eprintln!(\"catalog init failed: {src}\"),\n    ...\n}","preventionTips":["Back up the catalog before upgrading influxdb3 versions","Keep catalog storage credentials and endpoints validated","Avoid killing the process mid-snapshot to prevent catalog corruption"],"tags":["rust","catalog","startup","metadata"],"backgroundTag":"module-init-failed","analyzedSha":"06200ef96ba82c5f6727e5038a83af8e722c6875","analyzedAt":"2026-09-19T12:55:30.003Z","contentChangedAt":"2026-09-19T12:55:30.003Z","schemaVersion":2},"datasetVersion":"2026-09-23T08:17:48.524Z"}