Repository navigation
Conversation
…pache/iceberg#13225 to 1.12.0) Net change of apache/iceberg#13225 (head 441d6b52) applied to apache-iceberg-1.12.0. Conflicts resolved by keeping 1.12.0's readQueryParams and adding the KeyManagementClient argument. Test-only build for Datastrato; not a supported release.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Requested by Nevin
Summary
A test-only Iceberg 1.12.0 build whose REST client encrypts. Stock Iceberg REST clients write keyed tables in
plaintext (datastrato/gravitino-enterprise#2249), so Datastrato's acceptance tests cannot show encrypted data through
Gravitino's Iceberg REST catalog. This branch applies apache/iceberg#13225 to the 1.12.0 release so loom's test image can
run encrypted round trips. It is not customer availability: customers need an upstream release with the fix.
Changes
441d6b52):RESTSessionCatalogcreates aKeyManagementClientfrom the catalog'sencryption.kms-typeorencryption.kms-impl, andRESTTableOperationsusesa standard encryption manager and an encrypting
FileIOfor keyed tables. The REST test-catalog cases join the Spark4.1 encryption suites.
readQueryParamsargument and adding the KMS clientargument beside it:
RESTSessionCatalog,RESTTableOperations,TestFreshnessAwareLoading.1.12.0-ds.1(version.txt), so the build never collides with the real 1.12.0.ds/1.12.0-baseisapache-iceberg-1.12.0plus one commit that removes upstream's GitHub workflows, sonothing runs on push or pull request. Build and test locally.
Verification
Run locally with Gradle, JDK 17, from this branch:
TestRESTCatalogTestFreshnessAwareLoadingEncryptionUtil, Avro split)TestTableEncryption(16 REST-catalog cases)TestCTASEncryptionconnections under parallel load. Run alone, all pass.
iceberg-spark-runtime-4.1_2.13-1.12.0-ds.1.jaris built from this branch and records it iniceberg-build.properties.Related work
Related to: datastrato/gravitino-enterprise#2382, datastrato/gravitino-enterprise#2249, apache/iceberg#13225
Used by: datastrato/loom#721
🤖 Generated with Claude Code