{"record":{"id":"4c351f3183456d26","repo":"apache/iceberg","slug":"s3-signer-uri-is-configured-via-deprecated-propert","errorCode":null,"errorMessage":"S3 signer URI is configured via deprecated property {}, this won't be supported in future releases. Please remove this property to let the signer use the default URI instead.","messagePattern":"S3 signer URI is configured via deprecated property (.+?), this won't be supported in future releases\\. Please remove this property to let the signer use the default URI instead\\.","errorType":"console","errorClass":null,"httpStatus":null,"severity":"info","filePath":"aws/src/main/java/org/apache/iceberg/aws/s3/signer/S3V4RestSignerClient.java","lineNumber":238,"sourceCode":"\n  private boolean credentialProvided() {\n    return null != credential() && !credential().isEmpty();\n  }\n\n  @Value.Check\n  protected void check() {\n    Preconditions.checkArgument(\n        properties().containsKey(RESTCatalogProperties.SIGNER_ENDPOINT)\n            || properties().containsKey(RESTCatalogProperties.REMOTE_SIGNING_ENDPOINT),\n        \"Remote signing endpoint is required\");\n\n    Preconditions.checkArgument(\n        properties().containsKey(RESTCatalogProperties.SIGNER_URI)\n            || properties().containsKey(CatalogProperties.URI),\n        \"S3 signer service URI is required\");\n\n    if (properties().containsKey(RESTCatalogProperties.SIGNER_URI)) {\n      LOG.warn(\n          \"S3 signer URI is configured via deprecated property {}, this won't be supported in future releases. \"\n              + \"Please remove this property to let the signer use the default URI instead.\",\n          RESTCatalogProperties.SIGNER_URI);\n    }\n\n    if (properties().containsKey(RESTCatalogProperties.SIGNER_ENDPOINT)) {\n      LOG.warn(\n          \"Signer endpoint is configured via deprecated property {}, this won't be supported in future releases. \"\n              + \"Please remove this property to let the signer use the default endpoint instead.\",\n          RESTCatalogProperties.SIGNER_ENDPOINT);\n    }\n  }\n\n  @Override\n  protected void processRequestPayload(\n      SdkHttpFullRequest.Builder mutableRequest,\n      byte[] signature,\n      byte[] signingKey,","sourceCodeStart":220,"sourceCodeEnd":256,"githubUrl":"https://github.com/apache/iceberg/blob/86d9c8fc543e7c56c9f624eb725f76c9baff9570/aws/src/main/java/org/apache/iceberg/aws/s3/signer/S3V4RestSignerClient.java#L220-L256","documentation":"S3V4RestSignerClient.check() validates signer configuration. Setting the deprecated SIGNER_URI property still works but logs this deprecation warning, telling users to remove the property so the signer falls back to the default/catalog URI.","triggerScenarios":"Configuring s3.signer.uri in catalog properties while using the REST S3 signer; the property key is read at client initialization via check().","commonSituations":"Upgrading Iceberg after the signer URI handling moved to the catalog URI; copied older config templates; docs/blog posts referencing the old property.","solutions":["Remove s3.signer.uri from catalog properties","Set the desired URI via the standard CatalogProperties.URI (rest.catalog.uri) instead","Re-run and confirm the warning disappears"],"exampleFix":"// before\n's3.signer.uri' = 'https://signer.example.com'\n// after\n'rest.catalog.uri' = 'https://catalog.example.com'  // signer uses this by default","handlingStrategy":"validation","validationCode":"Properties props = catalog.properties();\nif (props.containsKey(\"s3.signer.uri\")) {\n  throw new IllegalArgumentException(\"Remove deprecated s3.signer.uri; configure rest.catalog.uri instead\");\n}","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Grep deployment configs for s3.signer.uri/s3.signer.endpoint and remove them","Rely on the catalog URI for signer routing","Review release notes when upgrading Iceberg AWS integrations"],"tags":["aws","s3-signer","rest-catalog","deprecation"],"backgroundTag":"deprecated-api-usage","analyzedSha":"86d9c8fc543e7c56c9f624eb725f76c9baff9570","analyzedAt":"2026-09-12T00:46:39.097Z","contentChangedAt":"2026-09-12T00:46:39.097Z","schemaVersion":2},"datasetVersion":"2026-09-23T08:17:48.524Z"}