Skip to content

[#8955] feat(lance-rest): Support register and deregister table in Lance REST server.#8964

Merged
yuqi1129 merged 47 commits intoapache:branch-lance-namepspace-devfrom
yuqi1129:issue_8955
Oct 31, 2025
Merged

[#8955] feat(lance-rest): Support register and deregister table in Lance REST server.#8964
yuqi1129 merged 47 commits intoapache:branch-lance-namepspace-devfrom
yuqi1129:issue_8955

Conversation

@yuqi1129
Copy link
Copy Markdown
Contributor

What changes were proposed in this pull request?

Support API registerTable and deregisterTable in Lance REST server.

Why are the changes needed?

It's from user requirement.

Fix: #8955

Does this PR introduce any user-facing change?

N/A

How was this patch tested?

Test locally.

@yuqi1129 yuqi1129 self-assigned this Oct 30, 2025
@yuqi1129 yuqi1129 marked this pull request as ready for review October 30, 2025 07:15
@jerryshao
Copy link
Copy Markdown
Contributor

@mchades can you please help to review and get this merged quickly?

@mchades
Copy link
Copy Markdown
Contributor

mchades commented Oct 31, 2025

plz resolve the conflicts

@yuqi1129
Copy link
Copy Markdown
Contributor Author

plz resolve the conflicts

done

Comment on lines -84 to -86
@HeaderParam("x-lance-table-location") String tableLocation,
@HeaderParam("x-lance-table-properties") String tableProperties,
@HeaderParam("x-lance-root-catalog") String rootCatalog,
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Are these the Lance rest spec defined headers?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Lance defines that the format of headers should be with prefixes x-lance and there is no description on the detail things such as property names. However, lance spark did use some constant header like x-lance-database, x-lance-table-location.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Lance defines that the format of headers should be with prefixes x-lance

Can you provide a source link for this?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

We'd better not leverage something that is in the header and only used in one or two clients; we should not make such an assumption. Can we confirm with the Lance guy?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

https://github.com/lancedb/lance-namespace/blob/b035daec6b7cce0bec484c18326100d07c9e33bb/java/lance-namespace-apache-client/api/openapi.yaml#L1194-L1203

They only define the parameters x-lance-table-properties and x-lance-table-location, but do not define the headers that should have the prefix x-lance.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

In fact, all known header attribute names start with "x-lance" except auth-related configurations, which misleads me.


dependencies {
implementation(project(":clients:client-java-runtime", configuration = "shadow"))
implementation(project(":clients:client-java"))
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

shoule we use exclude * ?

@yuqi1129 yuqi1129 merged commit 48342ac into apache:branch-lance-namepspace-dev Oct 31, 2025
26 checks passed
jerryshao pushed a commit to jerryshao/gravitino that referenced this pull request Nov 11, 2025
… in Lance REST server. (apache#8964)

### What changes were proposed in this pull request?

Support API `registerTable` and `deregisterTable` in Lance REST server.


### Why are the changes needed?

It's from user requirement.

Fix: apache#8955

### Does this PR introduce _any_ user-facing change?

N/A

### How was this patch tested?

Test locally.
youngyjd pushed a commit to youngyjd/gravitino that referenced this pull request Nov 21, 2025
… in Lance REST server. (apache#8964)

### What changes were proposed in this pull request?

Support API `registerTable` and `deregisterTable` in Lance REST server.


### Why are the changes needed?

It's from user requirement.

Fix: apache#8955

### Does this PR introduce _any_ user-facing change?

N/A

### How was this patch tested?

Test locally.
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.

3 participants