apache / apache/iceberg

REST Catalog: Return LoadTableResult for successful update requests

Open
#17,154 1 comment 0 reactions 0 assignees View on GitHub
improvement
Dominant language
Java
Stars
9.2k
Forks
3.5k
Avg merge
2d 11h
Merged PRs (30d)
132

Description

### Feature Request / Improvement

For the endpoints:
-
- `POST /v1/{prefix}/tables/rename`
- `POST /v1/{prefix}/transactions/commit`

Currently, on success, both these endpoints return:
```yml
responses:
204:
description: Success, no content
```

I would like to request a change for these endpoints to return the updated metadata on success, as this could save an additional roundtrip to fetch the new state for future updates/scans.

Confusingly, the `POST /v1/{prefix}/namespaces/{namespace}/tables/{table}` endpoint already does this:
```yml
responses:
200:
$ref: '#/components/responses/CommitTableResponse'
```
Which contains an updated `TableMetadata` object

### Query engine

None

### Willingness to contribute

- [ ] I can contribute this improvement/feature independently
- [ ] I would be willing to contribute this improvement/feature with guidance from the Iceberg community
- [x] I cannot contribute this improvement/feature at this time

Contributor guide

Open the contributing guide

Research direction

Start with the REST Catalog definitions for POST /v1/{prefix}/tables/rename and POST /v1/{prefix}/transactions/commit, then trace the existing CommitTableResponse used by the table commit endpoint. Update the success responses to expose the updated TableMetadata and add or adjust endpoint tests to verify the returned metadata.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
api, backend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.