Skip to content

0x1F as nested namespace separator for REST URL paths conflicts with Servlet spec #10338

Description

@westse

Feature Request / Improvement

The current Iceberg REST spec uses 0x1F to separate the parts of a multipart (nested) namespace parameter in URL paths and elsewhere. However this conflicts with the Servlet spec which calls for rejecting control characters (encoded or not), including the unit separator (0x1F), as "suspicious" and to return 400. Servlet containers enforce this (e.g. see jetty/jetty.project#11495), making implementing the Iceberg REST spec difficult.

Should a different, or at least alternative, separator character be selected to avoid conflicting with the Servlet spec?

Query engine

None

Activity

  1. arthurliu-db commented on Jul 25, 2024

    @arthurliu-db

    +1, we're running into a similar issue since we use Armeria web servers and web clients which also rejects requests with 0x1F in the URL path

  2. self-assigned this
    on Aug 1, 2024
  3. github-actions commented on Jan 29, 2025

    @github-actions

    This issue has been automatically marked as stale because it has been open for 180 days with no activity. It will be closed in next 14 days if no further activity occurs. To permanently prevent this issue from being considered stale, add the label 'not-stale', but commenting on the issue is preferred when possible.

  4. westse commented on Jan 29, 2025

    @westse
    ContributorAuthor

    not-stale

  5. ebyhr commented on Jan 4, 2026

    @ebyhr
    Member

    @nastra I think we can close this issue now. #10877 didn't automatically close this issue as the PR description contains a redundant #.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions