Skip to content

Latest commit

 

History

History
254 lines (172 loc) · 9.82 KB

CHANGELOG.md

File metadata and controls

254 lines (172 loc) · 9.82 KB

Nessie Changelog

The Nessie changelog is used to give users and contributors more information than just the list of commits. Entries are grouped in sections like Highlights or Upgrade notes, the provided sections can be adjusted as necessary. Empty sections will not end in the release notes.

Highlights

Upgrade notes

Breaking changes

New Features

  • Nessie-GC: Support Google Cloud Storage (GCS) (experimental)
  • Nessie-GC: Support Azure Blob Storage (experimental)

Changes

Deprecations

Fixes

  • Add namespace validation for rename operation.
  • Namespace validation now correctly reports only one conflict when deleting a namespace that has children, whereas previously it reported one conflict for each child.

Commits

0.73.0 Release (2023-10-27)

Highlights

  • Nessie API spec was upgraded to 2.1.3. The only change is that when a commit attempts to create a content inside a non-existing namespace, the server will not only return a NAMESPACE_ABSENT conflict for the non-existing namespace itself, but will also return additional NAMESPACE_ABSENT conflicts for all the non-existing ancestor namespaces.

New Features

  • Nessie client: the OAuth2 authentication provider is now able to recover from transient failures when refreshing the access token.

0.72.4 Release (2023-10-24)

Fixes

  • Docker images again honor environment variables such as JAVA_OPTS_APPEND that are used to pass additional JVM options to the Nessie server. See the ubi8/openjdk-17 base image documentation for the list of all supported environment variables.

0.72.2 Release (2023-10-19)

New Features

  • Exposes object cache metrics, meters use the tags application="Nessie",cache="nessie-objects"

Fixes

  • Fix incorrectly calculated object cache maximum weight.

0.72.0 Release (2023-10-13)

New Features

  • Spark SQL extensions now support the DROP ... IF EXISTS syntax for branches and tags.
  • table-prefix configuration option added to DynamoDB version store.
  • Ability to export repositories in V1 format. This is useful for migrating repositories to older Nessie servers that do not support the new storage model.
  • Added support for Spark 3.5, removed support for Spark 3.1 - along with the version bump of Apache Iceberg to 1.4.0.
  • Functionality that records current-HEAD changes of named references and APIs to expose the information. This is useful to recover from a scenario when a "primary data center/region/zone" has been lost and replication of a distributed database has been interrupted.

Changes

  • Introduces sizing of the Nessie object cache using a relative value of the max Java heap size. The defaults have been changed to 70% of the Java max heap size (from the previous default of 64MB). If a fixed cache size setting has been explicitly configured, consider to change it to the fraction based one.
  • Relative hashes are now supported in table references, thus allowing SQL queries to specify a relative hash in the FROM clause, e.g. FROM table1@main#1234^1.
  • BigTable backend: ability to disable telemetry (which is enabled by default).
  • Spark SQL extensions use Nessie API V2 now.
  • DynamoDB backend now supports table prefixes.
  • Advanced configuration options for BigTable backend.

Fixes

  • Quarkus 3.4.3 includes a Netty version bump to address CVE-2023-44487 (HTTP/2 rapid reset). Note: Nessie uses undertow only for testing purposes, so the undertow release used in Nessie does not expose this CVE to users.

0.71.0 Release (2023-09-21)

Changes

  • Configuration of the NessieClientBuilder now uses system properties, environment, ~/.config/nessie/nessie-client.properties and ~/.env

Deprecations

  • HttpClientBuilder class has been deprecated for removal, use NessieClientBuilder instead.

0.70.2 Release (2023-09-12)

Fixes

  • Fix wrong New value for key 'some-key' must not have a content ID when swapping tables.

0.70.1 Release (2023-09-12)

Changes

  • Content Generator tool: added new --limit parameter to commits, references and entries commands.
  • Content Generator tool: tool now prints the total number of elements returned when running the commits, references and entries commands.
  • Helm charts: OpenTelemetry SDK is now completely disabled when tracing is disabled.
  • Helm charts: when auth is disabled, Quarkus OIDC doesn't print warnings anymore during startup.

Fixes

  • GC: Handle delete manifests and row level delete files

0.70.0 Release (2023-08-31)

New Features

  • Content Generator tool: added new --hash parameter to commits, content and entries commands.

Changes

  • Content Generator tool: commit hashes are now printed in full when running the commits command.
  • For a "get-keys" operation that requests the content objects as well, the content objects are now fetched using bulk-requests.

Fixes

  • Fixed potential index corruption when importing repositories with many keys into the new storage model that could cause some contents to become inaccessible.

0.69.0 Release (2023-08-25)

Fixes

  • Nessie CLI: check-content command was incorrectly reporting deleted keys as missing content, when using new storage model.
  • GC Tool handles JDBC config via environment correctly

0.68.0 Release (2023-08-24)

Upgrade notes

  • If a repository has been imported using Nessie CLI 0.68.0 or higher, then this repo cannot be later served by a Nessie server whose version is lower than 0.68.0. This is due to a change in the internal repository description format.

New Features

  • Support BigTable in Helm charts
  • NessieCLI check-content command is now compatible with Nessie's new storage model

Changes

  • Java client API to assign/delete reference operations without specifying a concrete reference type (no change to REST API).
  • Creating and assigning references now requires a target hash to be specified.

Fixes

  • Secondary commit parents are now properly exported and imported
  • Fix volume declarations for RocksDB in Helm
  • Remove unnecessary repository-deletion when importing a legacy Nessie repo
  • GC Tool uber-jar now includes AWS STS classes
  • GC Tool now logs at INFO instead of DEBUG
  • GC Tool now correctly works against PostgreSQL

0.67.0 Release (2023-08-02)

Upgrade notes

  • Tracing and metrics have been migrated to Quarkus "native". The options to en/disable metrics and tracing have been removed. Please remove the options nessie.version.store.trace.enable, nessie.version.store.metrics.enable from your Nessie settings.

Changes

  • Nessie API spec upgraded to 2.1.1
  • Support for relative hashes has been standardized and is now allowed in all v2 endpoints
  • Migrate to Quarkus metrics and tracing

0.66.0 Release (2023-07-31)

New Features

  • New entries command in Content-Generator tool
  • New --all option to the content-refresh Content-Generator tool command
  • Helm chart: add podLabels for Nessie Pods

Changes

  • Add/fix info section in OpenAPI spec, add templates to servers section

Fixes

  • Fix handling of not present and wrong reference-type for create/assign/delete-reference API calls

0.65.1 Release (2023-07-19)

Changes

  • Add validation of cutoff-definitions in GarbageCollectorConfig
  • Fix self-reference in OpenAPI spec
  • Add servers section to OpenAPI spec

0.65.0 Release (2023-06-14)

  • Revert Gradle 8.2.1 (#7239)
  • Add Nessie as a Source announcement blog from Dremio website (#7236)
  • Add --author option to content-generator commands (#7232)
  • Add repository configuration objects (#7233)
  • Fix retrieval of default branch (#7227)
  • Allow re-adds in same commit (#7225)
  • Allow snapshot versions in dependencies (#7224)
  • IDE: Cleanup Idea excludes (#7223)
  • Spark-tests: disable UI (#7222)
  • Compatibility tests: move to new storage model (#6910)
  • Use testcontainers-bom (#7216)
  • Reference keycloak-admin-client-jakarta (#7215)
  • Post Quarkus 3: Remove no longer needed dependency exclusion (#7214)
  • Bump to Quarkus 3.2.0.Final (#6146)
  • CI: Add some missing --scan Gradle flags (#7210)
  • Update main README after UI sources moved (#7207)
  • Forbid relative hashes in commits, merges and transplants (#7193)
  • Remove misplaced license header (#7203)
  • More diff-tests (#7192)
  • removed extra tab (#7189)
  • Tests: Make ITCassandraBackendFactory less flaky (#7186)
  • IntelliJ: Exclude some more directories from indexing (#7181)