Skip to content

Nessie 0.93.1

Compare
Choose a tag to compare
@github-actions github-actions released this 19 Jul 19:36
· 1428 commits to main since this release

Try it

The attached nessie-quarkus-0.93.1-runner.jar is a standalone uber-jar file that runs on Java 17 or newer and it is also available via Maven Central. Download and run it (requires Java 17):

wget https://github.com/projectnessie/nessie/releases/download/nessie-0.93.1/nessie-quarkus-0.93.1-runner.jar
java -jar nessie-quarkus-0.93.1-runner.jar

Nessie CLI is attached as nessie-cli-0.93.1.jar, which is a standalone uber-jar file that runs on Java 11 or newer. Nessie CLI is also available as a Docker image: docker run --rm -it ghcr.io/projectnessie/nessie-cli:0.93.1.

Nessie GC tool is attached as nessie-gc-0.93.1.jar, which is a standalone uber-jar file that runs on Java 11 or newer. Shell completion can be generated from the tool, check its help command. Nessie GC tool is also available as a Docker image: docker run --rm ghcr.io/projectnessie/nessie-gc:0.93.1 --help.

Nessie Server Admin tool is attached as nessie-server-admin-tool-0.93.1-runner.jar, which is a standalone uber-jar file that runs on Java 17 or newer. Shell completion can be generated from the tool, check its help command. Nessie Server Admin tool is also available as a Docker image: docker run --rm ghcr.io/projectnessie/nessie-server-admin:0.93.1 --help.

The attached nessie-helm-0.93.1.tgz is a packaged Helm chart, which can be downloaded and installed via Helm. There is also the Nessie Helm chart repo, which can be added and used to install the Nessie Helm chart.

Changelog

Breaking changes

  • The throttled-retry-after advanced configuration property was renamed from
    nessie.catalog.service.s3.throttled-retry-after to
    nessie.catalog.error-handling.throttled-retry-after. The old property name is ignored.
  • Helm chart: a few ADLS-specific options under catalog.storage.adls were incorrectly placed and
    therefore effectively ignored by Nessie; if you are using ADLS, please re-check your configuration
    and adjust it accordingly.

New Features

  • CLI: New REVERT CONTENT command to update one or more tables or views to a previous state.

Changes

  • Catalog: ADLS + GCS credentials are no longer sent to the client. It is considered insecure to expose the
    server's credentials to clients, even if this is likely very convenient. Unless we have a secure mechanism
    to provide per-client/table credentials, users have to configure object store credentials when using GCS or
    ADLS via the local Iceberg configuration(s).

Fixes

  • GC: Fix behavior of cutoff policy "num commits", it was 'off by one' and considered the n-th commit as non-live
    vs the n-th commit as the last live one.
  • GC: Record failed "sweep"/"expire" runs in the repository. Before this fix, failures were reported on the console.
  • GC: Fix handling of broken manifest files written by pyiceberg up to 0.6.1
  • Catalog/ADLS: Don't let endpoint default to warehouse/object-store URI
  • Catalog/ADLS: More informative error message if mandatory endpoint is missing.
  • Catalog/ADLS: Use a less restrictive endpoint in the 'ObjectIO.ping' function used for health checks.

Full Changelog (minus renovate commits):

  • Revert "[release] release nessie-0.93.0", but keep version
  • Build: fix annotation types warnings (#9148)
  • CI: Use Java 21 for CI (#9140)
  • Release workflow: Let helm chart publishing depend on images publishing (#9142)
  • Bump undertow from 2.2.28 to 2.2.33 (#9143)
  • Bump Spark 3.4 from 3.4.2 to 3.4.3 (#9144)
  • Bump Scala 2.13 from 2.13.13 to 2.13.14 (#9145)
  • Revert "[release] release nessie-0.93.0"
  • Add an Operating System check (#9139)
  • Cache invalidations: move code to :nessie-quarkus (#9137)
  • Catalog: decouple bucket name from bucket config key (#9116)
  • Catalog/ADLS: change 'ping' endpoint (#9134)
  • Add exception mappers to convert storage failures to Iceberg REST client exceptions (#8558)
  • CLI: Nicer syntax rendering (#9119)
  • CLI: Add REVERT CONTENT command (#9120)
  • Catalog: update IcebergManifestFileReader to handle broken manifest files (#9132)
  • Reference caching: update default for negative, update comments/docs (#9126)
  • Catalog/ADLS: More information if manadory ADLS endpoint is missing (#9128)
  • ninja: changelog
  • GC: Manifest file reading with specById (#9131)
  • Site: notes on Nessie server sizing + tips (#9127)
  • Catalog / GCS: minor enhancements (#9107)
  • Site: dynamo db note (#9113)
  • GC: Record expiry exception in repository + record stack trace as well (#9114)
  • Catalog: Don't expose ADLS + GCS credentials (#9100)
  • Renovate: automerge action updates (#9106)
  • Catalog: Accept object-store locations w/o trailing / (#9098)
  • Catalog/ADLS: Don't let endpoint default to warehouse/object-store URI (#9102)
  • Add message argument to Objects.requireNonNull() (#9099)
  • GC: Fix behavior of cutoff policy "num commits", 'off by one' (#9096)
  • Site: Fix links to nessie-bom (#9088)