You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[Bug] RestCatalog initialization crashes with Apache Polaris due to unsupported HTTP methods (PUT) in ConfigResponse #3074
Describe the bug
When attempting to initialize a RestCatalog pointing to an Apache Polaris REST server, the initialization fails immediately. Apache Polaris returns valid REST endpoints that include the PUT HTTP method (e.g., for updating namespaces/tables). However, PyIceberg's Endpoint parser and Pydantic validation strictly expect only GET, HEAD, POST, or DELETE.
This causes two cascaded errors depending on the PyIceberg version:
A TypeError: 'str' object is not callable when trying to instantiate the HttpMethod.
A Pydantic ValidationError if the type casting is bypassed, explicitly stating that PUT is not an allowed enum value.
To Reproduce
Attempt to connect to an Apache Polaris catalog using RestCatalog:
Expected behavior
The RestCatalog should initialize successfully, parse the valid PUT endpoints returned by the Polaris configuration, or at least gracefully ignore unsupported HTTP methods without crashing the entire initialization process.
Activity
jayceslesar commentedon Feb 21, 2026
i believe this was fixed in #3010 and is just waiting on a patch release