rdblue opened a new pull request #4241: URL: https://github.com/apache/iceberg/pull/4241
This adds an implementation of `RESTClient` that translates REST protocol requests to the `Catalog` API. This makes it possible to test the `RESTCatalog` implementation like any other catalog. These tests do not exercise serialization; request and response objects are passed between methods directly. * `RESTCatalogAdaptor` is a simple translation from `RESTClient` routes to catalog handlers * `CatalogHandlers` accepts request objects, makes the appropriate calls to a catalog, and produces response objects * `RESTCatalog` is a `Catalog` implementation that translates to calls to `RESTClient` * `TestRESTCatalog` runs `CatalogTests` against the `RESTCatalog` This also implements load table and update table routes, with new tests in `CatalogTests` that are passing for REST and JDBC. To get tests working, this PR includes a few other changes and fixes: * Adds `equals` to `CharSequenceSet` for assertions * Updates `TableMetadataParser` to handle `refs` * Supports `-1` to signal "last added" in schema, partition spec, and sort order changes * Fixes `TableMetadata` history timestamps by detecting whether a snapshot was added * Adds `applyTo(TableMetadata.Builder)` to `MetadataUpdate` to apply changes from the REST protocol on the server side * Adds requirements classes and validations that are used server side to check the loaded metadata -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
