Apache Iceberg version
0.11.0 (latest release)
Please describe the bug 🐞
I am trying to connect to a rest catalog exposed by AWS S3 Tables as documented here. The code snippet that I have is:
rest_catalog = load_catalog(
catalog_name,
**{
'type': 'rest',
'warehouse':'arn:aws:s3tables:<Region>:<accountID>:bucket/<bucketname>',
'uri': 'https://s3tables/.<Region>.amazonaws.com/iceberg',
'rest.sigv4-enabled': 'true',
'rest.signing-name': 's3tables',
'rest.signing-region': '<Region>'
}
rest_catalog.load_namespace_properties('my_namespace')
)
However, I got an error:
1 validation error for NamespaceResponse
properties
Field required [type=missing, input_value={'namespace': ['my_namespace']}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.12/v/missing
I dug deeper into the open api spec for GET /v1/{prefix}/namespaces/{namespace} and looks like properties is NOT a required field in the response; hence, the response from AWS matches the specification. However, looks like the pydantic validation on iceberg side does not account for that.
Link to the method definition.
Please let me know if I misunderstood something.
Willingness to contribute
Apache Iceberg version
0.11.0 (latest release)
Please describe the bug 🐞
I am trying to connect to a rest catalog exposed by AWS S3 Tables as documented here. The code snippet that I have is:
However, I got an error:
I dug deeper into the open api spec for
GET /v1/{prefix}/namespaces/{namespace}and looks likepropertiesis NOT a required field in the response; hence, the response from AWS matches the specification. However, looks like the pydantic validation on iceberg side does not account for that.Link to the method definition.
Please let me know if I misunderstood something.
Willingness to contribute