-
Notifications
You must be signed in to change notification settings - Fork 185
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update to use post_array_schema_from_rest
.
#5181
base: dev
Are you sure you want to change the base?
Conversation
This adds all of the Capnp messages, serialization code, rest client functions, and server side request processing for handling the new load array schema handler. Notably, this does not update `tiledb_array_schema_load` to use these new functions because that cannot happen until after TileDb-Cloud-REST is deployed with a libtiledb that contains this commit.
This change enables the REST POST endpoint for loading array schemas from the REST server as well as enables the load_schema_with_enumerations behavior both for rest and local storage.
Originally I just slapped a tiledb_array_schema_load_with_enumerations and a hidden boolean on the load. This approach will prevent us from having to deprecate APIs in the future if we ever need to change the list of options for loading array schema.
…-load-array-schema-request
…-load-array-request
+ Fix bug from using incorrect timestamps.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great job!!! A few comments to address.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🚀
Can we open the PR now?
Yep marked ready for review, looking at CI failures now |
e008f81
to
7f7fa1d
Compare
7f7fa1d
to
aa494ce
Compare
Moving to draft to not accidentally merge before fixing the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Approved tiledb/api/c_api/config/config_api_external.h
and tiledb/sm/cpp_api/config.h
only. Docs PR in progress.
…-load-array-request
+ Fixes a test failure in REST where only the latest schema would have enumerations loaded in the response.
I think this PR in its current format creates a chicken and egg situation. Long story short we can't be introducing CAPNP changes in the same PR as we are enabling a REST request that will need to be handled server-side by deserializing that changed CAPNP model. Not at all confusing 😅 As a rule of thumb CAPNP changes need to happen in a previous release than the one that sends a request to the route that will be using that CAPNP.
Hope it makes sense and sorry I didn't catch that earlier :( |
…5237) This factors out serialization and API changes in #5181 that are required for the HandleGetArraySchema route. These changes will need to be available on REST before we can enable the new route for loading the array schema. There is a quick summary of the changes required in [SC-52877](https://app.shortcut.com/tiledb-inc/story/52877/core-serialization-changes-for-loadarrayschema-models). --- TYPE: IMPROVEMENT DESC: Add serialization and API changes for post_array_schema_from_rest.
…-load-array-request
This updates internal
get_array_schema_from_rest
calls topost_array_schema_from_rest
added in #4399. This also fixes array schema evolution time traveling issues reported in SC-49827 caused by not using timestamps to open the array fortiledb://
URIs.[sc-32991]
TYPE: NO_HISTORY
DESC: Update to use
post_array_schema_from_rest
.