Skip to content

[Iceberg 1.11] Update REST spec#3687

Open
adutra wants to merge 1 commit intoapache:feature/iceberg-1.11from
adutra:feature/iceberg-1.11-update-rest-spec
Open

[Iceberg 1.11] Update REST spec#3687
adutra wants to merge 1 commit intoapache:feature/iceberg-1.11from
adutra:feature/iceberg-1.11-update-rest-spec

Conversation

@adutra
Copy link
Contributor

@adutra adutra commented Feb 6, 2026

This isn't the definitive spec for 1.11, so it will have to be updated again later.

Checklist

  • 🛡️ Don't disclose security issues! (contact security@apache.org)
  • 🔗 Clearly explained why the changes are needed, or linked related issues: Fixes #
  • 🧪 Added/updated tests with good coverage, or manually tested (and explained how)
  • 💡 Added comments for complex logic
  • 🧾 Updated CHANGELOG.md (if needed)
  • 📚 Updated documentation in site/content/in-dev/unreleased (if needed)

.createNamespace(
catalog,
createNamespaceRequest,
UUID.randomUUID(),
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note: random UUIDs are not UUID v7! This will have to be changed if/when we decide to support idempotency keys.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's fine IMO. We can revisit later, when needed. Mind adding a TODO?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Or you use a

static final UUID NULL_UUID = new UUID(0L, 0L);

Copy link
Member

@snazy snazy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM - I'd advocate for the "NULL_UUID" (or whatever other fancy name)

Copy link
Member

@snazy snazy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The spec-file changes LGTM.

I think there are a couple of changes that deserve feature/configuration toggles/guard-rails and others seem to deserve code changes. But I think those should be done separately.

type: integer
minimum: 1
maximum: 2
maximum: 3
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we potentially add some safeguards to allow/disallow v3? (in a separate PR, of course)

type: string
metadata-location:
type: string
overwrite:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This one cries for a feature/configuration toggle?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See: apache/iceberg#15248

It's optional, so I think we are fine.

message: The given namespace already exists
type: AlreadyExistsException
code: 409
NamespaceNotEmptyError:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This new one seems to demand other code changes.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good point, I'll investigate.

This isn't the definitive spec for 1.11, so it will have to be updated again later.
@adutra adutra force-pushed the feature/iceberg-1.11-update-rest-spec branch from 5a906cc to c8bf29c Compare February 6, 2026 15:48
@github-project-automation github-project-automation bot moved this from PRs In Progress to Ready to merge in Basic Kanban Board Feb 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants