{"record":{"id":"2a5357351a3966e2","repo":"influxdata/influxdb","slug":"not-implemented","errorCode":null,"errorMessage":"not implemented","messagePattern":"not implemented","errorType":"exception","errorClass":"WriteParseError","httpStatus":405,"severity":"error","filePath":"core/iox_http/src/write/params.rs","lineNumber":45,"sourceCode":"        match self {\n            Self::Second => 1_000_000_000,\n            Self::Millisecond => 1_000_000,\n            Self::Microsecond => 1_000,\n            Self::Nanosecond => 1,\n        }\n    }\n}\n\n#[derive(Debug)]\n/// Standardized DML operation parameters\npub struct WriteParams {\n    pub namespace: NamespaceName<'static>,\n    pub precision: Precision,\n}\n\n#[derive(Debug, thiserror::Error)]\npub enum WriteParseError {\n    #[error(\"not implemented\")]\n    NotImplemented,\n\n    /// An error parsing a single-tenant HTTP request.\n    #[error(transparent)]\n    SingleTenantError(#[from] SingleTenantExtractError),\n\n    /// An error parsing a multi-tenant HTTP request.\n    #[error(transparent)]\n    MultiTenantError(#[from] MultiTenantExtractError),\n}\n\nimpl From<&WriteParseError> for hyper::StatusCode {\n    fn from(value: &WriteParseError) -> Self {\n        match value {\n            WriteParseError::NotImplemented => Self::METHOD_NOT_ALLOWED,\n            WriteParseError::SingleTenantError(e) => Self::from(e),\n            WriteParseError::MultiTenantError(e) => Self::from(e),\n        }","sourceCodeStart":27,"sourceCodeEnd":63,"githubUrl":"https://github.com/influxdata/influxdb/blob/06200ef96ba82c5f6727e5038a83af8e722c6875/core/iox_http/src/write/params.rs#L27-L63","documentation":"WriteParseError::NotImplemented is a placeholder variant in iox_http's write parameter parsing with the literal message 'not implemented'. It is thrown when code paths reach a parsing mode that has not been implemented yet; it signals an incomplete feature rather than bad user input.","triggerScenarios":"Calling the write request parsing machinery on a code path guarded by NotImplemented, typically single-tenant extraction that is stubbed out in this build/mode.","commonSituations":"Deploying or exercising an IOx build where the single-tenant write path is unimplemented; tests or integrations hitting stub variants.","solutions":["Do not use this write path; use the implemented multi-tenant (v2) write endpoint instead.","Check the iox_http version for a build where the path is implemented.","If you maintain the code, replace the stub with a real implementation.","File an issue upstream if this path should be supported."],"exampleFix":"// before\nlet err: WriteParseError = WriteParseError::NotImplemented; // stub path hit\n// after\n// route requests to the implemented path\nmatch parse_multi_tenant(req) {\n    Ok(params) => write(params).await,\n    Err(e) => respond_with_status(e),\n}","handlingStrategy":"type-guard","validationCode":null,"typeGuard":"fn is_not_implemented(e: &WriteParseError) -> bool {\n    matches!(e, WriteParseError::NotImplemented)\n}","tryCatchPattern":"match write_result {\n    Err(WriteParseError::NotImplemented) => {\n        // route to an implemented path instead\n        fallback_to_multi_tenant_write(req).await\n    }\n    other => other,\n}","preventionTips":["Check which write modes your iox_http build implements before integrating","Route writes through the implemented multi-tenant/v2 endpoint","Track upstream releases for when the stubbed path lands"],"tags":["not-implemented","http","write","stub"],"backgroundTag":"method-not-implemented","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"}