Skip to content

Add support for custom header configs in RESTCatalog #455

@geruh

Description

@geruh

Feature Request / Improvement

I noticed that PyIceberg's RESTCatalog doesn't set custom header configs. This feature is in Java's implementation of the RESTCatalog, and was beneficial when building out my own testing catalog. For instance, my catalog may have a custom content-type header for POST requests. Therefore, my config endpoint can return a config containing this property:

{
  "defaults": {
    "header.content-type": "application/json-custom"
  },
  "overrides": {}
}

Which in the Java implementation will merge this in to the properties and add it as a header for all subsequent requests.

This logic can be followed in the RESTSessionCatalog init method: https://github.com/apache/iceberg/blob/4090a8860061f58748e3faa6804094f90d3575f3/core/src/main/java/org/apache/iceberg/rest/RESTSessionCatalog.java#L165

Is this something, we want to support in PyIceberg? I can add this if so.

@HonahX @Fokko

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions