{"record":{"id":"257433b16ca9bff7","repo":"risingwavelabs/risingwave","slug":"unsupported-warehouse-scheme","errorCode":null,"errorMessage":"Unsupported warehouse scheme: {}","messagePattern":"Unsupported warehouse scheme: (.+?)","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/connector/src/connector_common/iceberg/mod.rs","lineNumber":648,"sourceCode":"                    .enable_config_load(Some(self.enable_config_load()))\n                    .build(),\n            ),\n            \"gs\" | \"gcs\" => StorageCatalogConfig::Gcs(\n                storage_catalog::StorageCatalogGcsConfig::builder()\n                    .warehouse(warehouse)\n                    .credential(self.gcs_credential.clone())\n                    .enable_config_load(Some(self.enable_config_load()))\n                    .build(),\n            ),\n            \"azblob\" => StorageCatalogConfig::Azblob(\n                storage_catalog::StorageCatalogAzblobConfig::builder()\n                    .warehouse(warehouse)\n                    .account_name(self.azblob_account_name.clone())\n                    .account_key(self.azblob_account_key.clone())\n                    .endpoint(self.azblob_endpoint_url.clone())\n                    .build(),\n            ),\n            scheme => bail!(\"Unsupported warehouse scheme: {}\", scheme),\n        };\n\n        Ok(CatalogBuildPlan::Storage(config))\n    }\n\n    fn build_native_rest_catalog_props(&self) -> ConnectorResult<CatalogBuildPlan> {\n        let mut iceberg_configs = HashMap::new();\n\n        // check gcs credential or s3 access key and secret key\n        if let Some(gcs_credential) = &self.gcs_credential {\n            iceberg_configs.insert(GCS_CREDENTIALS_JSON.to_owned(), gcs_credential.clone());\n        } else {\n            if let Some(region) = &self.s3_region {\n                iceberg_configs.insert(S3_REGION.to_owned(), region.clone());\n            }\n            if let Some(endpoint) = &self.s3_endpoint {\n                iceberg_configs.insert(S3_ENDPOINT.to_owned(), endpoint.clone());\n            }","sourceCodeStart":630,"sourceCodeEnd":666,"githubUrl":"https://github.com/risingwavelabs/risingwave/blob/6469eb736d691e8e9b8a419a57edd6429ca77417/src/connector/src/connector_common/iceberg/mod.rs#L630-L666","documentation":"After successfully parsing the warehouse URL, `build_storage_catalog_config` matches the URL scheme against supported object stores (s3/s3a, azblob). Any other scheme hits the catch-all `scheme => bail!` arm, so the storage catalog only supports those backends.","triggerScenarios":"`warehouse.path` with schemes like 'gs://' (GCS), 'file://', 'oss://', or 'http://' while `catalog.type = 'storage'`.","commonSituations":"GCS users assuming storage-catalog parity with S3; local development attempts with file://; provider-specific schemes copied from other tools (oss, cos).","solutions":["Use a supported scheme: s3://, s3a://, or azblob-compatible URL.","For GCS or other stores, switch to `catalog.type = 'rest'` (via an S3-compatible/GCS REST gateway) or a catalog type that supports the backend.","Check for typos ('s3a' vs 's3aa')."],"exampleFix":"// before\nwarehouse.path = 'gs://my-bucket/warehouse'\n// after\nwarehouse.path = 's3://my-bucket/warehouse'","handlingStrategy":"validation","validationCode":"const scheme = new URL(opts['warehouse.path']).protocol.replace(':','');\nif (!['s3','s3a','azblob'].includes(scheme)) {\n  throw new Error(`Unsupported warehouse scheme: ${scheme}`);\n}","typeGuard":null,"tryCatchPattern":"catch (e) { if (String(e).includes('Unsupported warehouse scheme')) { /* fall back to rest catalog or s3-compatible endpoint */ } else { throw e; } }","preventionTips":["Check scheme support (s3/s3a/azblob only) before choosing catalog.type='storage'.","For GCS/Azure/other stores, plan for a REST catalog from the start.","Avoid provider-specific schemes (gs://, oss://) copied from other tooling."],"tags":["iceberg","storage-catalog","unsupported-backend"],"backgroundTag":"unsupported-operation","analyzedSha":"6469eb736d691e8e9b8a419a57edd6429ca77417","analyzedAt":"2026-09-11T21:06:21.487Z","contentChangedAt":"2026-09-11T21:06:21.487Z","schemaVersion":2},"datasetVersion":"2026-09-14T16:17:12.679Z"}