vinishjail97 opened a new pull request, #952:
URL: https://github.com/apache/incubator-xtable/pull/952
Fixes #944
## What is the purpose of the pull request
In 0.3.0 the `xtable-utilities` bundle could load Iceberg's
`org.apache.iceberg.aws.glue.GlueCatalog` through `--icebergCatalogConfig` with
no extra jars. #822 made `iceberg-hive-runtime` `provided` in
`xtable-hive-metastore`, and that jar was the only source of
`org.apache.iceberg.aws.*` and `dev.failsafe` in the bundle. The
`iceberg-hive-runtime` shade include in `xtable-utilities` stayed, but it no
longer matches anything, so the classes dropped out of the 0.4.0 jar.
## Brief change log
- Add `org.apache.iceberg:iceberg-aws` (at `${iceberg.version}`, 1.9.2) to
root `dependencyManagement` and to `xtable-utilities`. It brings in
`dev.failsafe:failsafe:3.3.2` as a runtime dependency.
- Add both to the `xtable-utilities` shade includes, and remove the stale
`iceberg-hive-runtime` include. Re-adding `iceberg-hive-runtime` itself is not
an option, since its 1.7.2 Iceberg classes would clash with `iceberg-core`
1.9.2.
- README: note that `GlueCatalog` and `S3FileIO` are bundled, and that other
catalog implementations need `java -cp ... org.apache.xtable.utilities.RunSync`
instead of `java -jar`.
The AWS SDK clients that `iceberg-aws` needs (`glue`, `s3`, `sts`) are
already in the bundle, so `iceberg-aws-bundle` is not needed. The bundled jar
grows by about 15 MB (423 MB to 438 MB).
## Verify this pull request
- Built the bundled jar and ran a small program against it alone:
`GlueCatalog`, `S3FileIO`, `S3InputStream`, `FailsafeException`, `GlueClient`
and `S3Client` all load, and
`CatalogUtil.loadCatalog("org.apache.iceberg.aws.glue.GlueCatalog", ...)`
initializes (the same call `IcebergTableManager` makes).
- With fake credentials, a Glue `listNamespaces` call and an S3 read through
`S3InputStream` (the Failsafe path) both reach AWS and fail only with auth
errors, not missing classes.
- `./mvnw -pl xtable-utilities test` and `spotless:check` pass.
--
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]