{"record":{"id":"48bf45f09a7572c7","repo":"influxdata/influxdb","slug":"gcs-support-not-enabled-recompile-with-the-gcp-feature","errorCode":null,"errorMessage":"GCS support not enabled, recompile with the gcp feature enabled","messagePattern":"GCS support not enabled, recompile with the gcp feature enabled","errorType":"panic","errorClass":null,"httpStatus":null,"severity":"critical","filePath":"influxdb3_clap_blocks/src/object_store.rs","lineNumber":850,"sourceCode":"                        builder = builder.with_bucket_name(bucket);\n                    }\n                    if let Some(account) = &self.google_service_account {\n                        builder = builder.with_service_account_path(account);\n                    }\n\n                    Ok(object_store_limit::LimitObjectStore::new(\n                        Arc::new(builder.build().context(InvalidGCSConfigSnafu)?),\n                        self.object_store_connection_limit.get(),\n                        semaphore_metrics,\n                    ))\n                }\n\n                #[cfg(not(feature = \"gcp\"))]\n                fn new_gcs(\n                    &self,\n                    _semaphore_metrics: &Arc<tracker::AsyncSemaphoreMetrics>,\n                ) -> Result<object_store_limit::LimitObjectStore, ParseError> {\n                    panic!(\"GCS support not enabled, recompile with the gcp feature enabled\")\n                }\n\n                #[cfg(feature = \"aws\")]\n                fn new_s3(\n                    &self,\n                    semaphore_metrics: &Arc<tracker::AsyncSemaphoreMetrics>,\n                ) -> Result<object_store_limit::LimitObjectStore, ParseError> {\n                    info!(\n                        bucket=?self.bucket,\n                        endpoint=?self.aws_endpoint,\n                        object_store_type=\"S3\",\n                        \"Object Store\"\n                    );\n\n                    Ok(object_store_limit::LimitObjectStore::new(\n                        Arc::new(self.build_s3()?),\n                        self.object_store_connection_limit.get(),\n                        semaphore_metrics,","sourceCodeStart":832,"sourceCodeEnd":868,"githubUrl":"https://github.com/influxdata/influxdb/blob/06200ef96ba82c5f6727e5038a83af8e722c6875/influxdb3_clap_blocks/src/object_store.rs#L832-L868","documentation":"A runtime panic in `influxdb3_clap_blocks::object_store`. When the `gcp` cargo feature is not compiled in, the stub `new_gcs` constructor unconditionally panics with this message. It exists so the code compiles without the feature, but any configuration that selects Google Cloud Storage as the object store hits the panic at store construction time.","triggerScenarios":"Building influxdb3 without `--features gcp` (or with default features excluding gcp) and then configuring the object store type as Google Cloud Storage (`object-store = google ...`), causing `new_gcs` to be called during config parsing/store setup.","commonSituations":"Deploying a default-built binary to a GCP environment, or a Docker image built without the gcp feature while configs copied from a GCP deployment specify a GCS bucket.","solutions":["Rebuild/reinstall influxdb3 with the gcp feature enabled (e.g. `cargo build --features gcp` or use a GCS-enabled distribution).","Switch the configured object store to a supported type for the current build (e.g. file, s3) if GCS is not actually needed.","Verify the deployed binary's feature set matches the environment's storage backend before rollout."],"exampleFix":"// before\ncargo build --release\n\n// after\ncargo build --release --features gcp","handlingStrategy":"validation","validationCode":"# Verify GCS support before deploying:\ncargo tree -e features -p influxdb3_clap_blocks | grep -q 'feature \"gcp\"' && echo gcp-enabled || echo gcp-MISSING","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Build release binaries with the full feature set required by target environments (--features gcp).","Match the configured object-store type to the build's enabled features.","Add a smoke test that constructs each object store the deployment config uses.","Document required cargo features per distribution in deployment docs."],"tags":["panic","feature-flags","gcs","object-store","build-configuration"],"backgroundTag":"feature-not-enabled","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"}