Skip to content

Releases: oxia-db/oxia

v0.16.0

02 Mar 05:01
a610fa8

Choose a tag to compare

highlights

database fingerprint checksum — a new database fingerprint checksum mechanism for verifying database state integrity, along with WAL checksum gauge metrics for improved observability. (#877, #890, #891)

control request replication via WAL — control requests are now replicated through the WAL state machine, ensuring consistency across the cluster. (#882)

leader hint support — when a client sends a request to a non-leader node, the response now includes a hint pointing to the actual leader, reducing unnecessary round-trips. (#883)

negotiated features — support for feature negotiation between client and server, enabling safe rollout of new capabilities. (#878)


bug fixes


improvements


ci & build


full changelog: v0.15.3...v0.16.0

v0.15.3

04 Feb 01:34
80fb62d

Choose a tag to compare

What's Changed

  • feat: introduce the auto release by @mattisonchao in #866
  • Fix release workflow by using Makefile target for consistent builds by @Copilot in #868
  • Fix: Binary releases missing execute permissions by @Copilot in #870
  • feat: add static key file support for OIDC authentication with per-issuer configuration by @Copilot in #874
  • Revert "feat: add static key file support for OIDC authentication with per-issuer configuration (#874)" by @mattisonchao in #875
  • Feat: add per-issuer OIDC configuration with static key file support by @mattisonchao in #876
  • Allow to override version id and modification count by @merlimat in #872

Full Changelog: v0.15.2...v0.15.3

v0.15.2

19 Jan 04:47
977a99e

Choose a tag to compare

⚠️ Critical Fix: This release fixes a data loss issue when upgrading from <= v0.14.4.
Versions v0.15.0 and v0.15.1 had a database format conversion bug that could cause data loss during upgrades. If you are on v0.14.4 or earlier, upgrade directly to this version or later. See #846 for details.

⚠️ Critical Fix: Data loss with node expansion (affects <= v0.14.4).
Versions v0.14.4 and earlier had a non-atomic shard moving deletion that could cause data loss when expanding nodes. See #845 for details.

What's Changed

🛠 Bug Fixes

🚀 Features

Full Changelog: v0.15.1...v0.15.2

v0.15.1

15 Dec 17:06
acd4da8

Choose a tag to compare

⚠️ Known Issue: Data loss when upgrading from <= v0.14.4 to this version.
Upgrading from v0.14.4 or earlier to v0.15.0 or v0.15.1 can cause data loss due to a database format conversion issue. Upgrade directly to v0.15.2 or later instead. See #846 for details.

What's Changed

Full Changelog: v0.15.0...v0.15.1

v0.15.0

25 Nov 23:23
a952107

Choose a tag to compare

What's Changed

  • Pin Pebble disk format to a specific version by @merlimat in #748
  • Fixed panic in coordinator when not initialized by @merlimat in #751
  • Let the coordinator wait to become leader, in case multiple instances come up by @merlimat in #752
  • Updated to point to CNCF Code of Conduct by @merlimat in #754
  • Switched Copyright to "The Oxia Authors" by @merlimat in #755
  • Rename public gRPC to io.oxia.proto.v1.OxiaClient by @merlimat in #756
  • Alpine 3.22 by @merlimat in #758
  • Upgrade to Go 1.25 and follow newer lint rules by @merlimat in #759
  • Use StandaloneServer.ServiceAddr() to reduce boilerplate code in tests by @merlimat in #761
  • Use original context if available in Timer.Done() by @merlimat in #762
  • Fixed secondary index get when notifications are disabled by @merlimat in #763
  • Introduced key encoding for hierarchical sorting by @merlimat in #764
  • Fix data race in Zerolog console writer by @merlimat in #765
  • Fixed race condition in get sequences test by @merlimat in #766
  • Upgrade to Pebble 2.1.0 by @merlimat in #760
  • Cache Go deps in CI builds by @merlimat in #768
  • Refactored Dockerfile to allow caching of Go deps by @merlimat in #769
  • Enhance kv interface to work with different encoders by @merlimat in #767
  • Fixed issue with db iterator closed after the callback by @merlimat in #770
  • Cache docker builds for Trivy scanner by @merlimat in #771
  • Fixed initialization of logger when not using json by @merlimat in #773
  • Allow to configure db for different scenarios by @merlimat in #774
  • Disable colored log in tests to avoid data race detection in zerolog by @merlimat in #775
  • Raft based metadata provider by @merlimat in #757
  • Fixed logic for checking metadata version in raft metadata provider by @merlimat in #777
  • Coordinator: swapNode() should keep retrying leader election until it succeeds by @merlimat in #781
  • Use wait group in more idiomatic way by @merlimat in #784
  • Apply timeout to mocked server responses in coordinator test by @merlimat in #785
  • Minor clean up of using util methods in shard controller mocked tests by @merlimat in #787
  • Handle deletion of swapped out node in a background periodic task by @merlimat in #786
  • Removed unnecessary warning in coordinator shutdown by @merlimat in #789
  • fixes: flaky test - TestShardController_StartingWithLeaderAlreadyPresent by @mattisonchao in #790
  • fixes: deadlock when swap waitForFollowersToCatchUp by @mattisonchao in #788
  • refactor: introduce thread safe shard metadata by @mattisonchao in #791
  • Delete charts as it removed to oxia-db/helm-charts by @dao-jun in #782
  • refactor: move election leader logic into a separate struct by @mattisonchao in #793
  • [feat][admin] Initial Oxia admin commit and add list-namespaces command. by @dao-jun in #792
  • fix: using async write for wal benchmark by @mattisonchao in #795
  • Fix coordinator NPE by @dao-jun in #797
  • Add listnodes admin tool by @dao-jun in #800
  • fix: data lost by change ensemble by @mattisonchao in #798
  • Add modules for oxia common and client by @merlimat in #802
  • Ensure internal keys always sort last for natural ordering by @merlimat in #803
  • refactor: rename 'server/node' to 'dataserver' for better semantic clarity by @mattisonchao in #806
  • Use range-scan API for CLI list operation by @merlimat in #807
  • Fixed server -> dataserver import in client tests by @merlimat in #808
  • Revert "Add modules for oxia common and client (#802)" by @merlimat in #809
  • Hide internal keys by default in list and range-scan by @merlimat in #810
  • refactor: Introduce go workspace by @mattisonchao in #813
  • Fixed dependency issue with genproto and workspace by @merlimat in #817
  • Allow to configure key-sorting natural/hierarchical on namespaces by @merlimat in #818
  • refactor: reorganise the dataserver directory by @mattisonchao in #819
  • refactor: rename some plural packages to singular by @mattisonchao in #820
  • fixes: fix trivy upload error due to insufficient permission by @mattisonchao in #821
  • feat: rename nodeController to dataserverController by @mattisonchao in #822
  • Updated jwt, crypto and go-jose dependencies for CVEs by @merlimat in #823
  • Removed unused go tools from CI by @merlimat in #825
  • Moved proto under common/proto by @merlimat in #824
  • fix: rename node to data server in shard controller by @mattisonchao in #826
  • Added script to tag the releases by @merlimat in #827

New Contributors

Full Changelog: v0.14.4...v0.15.0

v0.14.4

28 Aug 15:59
7b12926

Choose a tag to compare

⚠️ Known Issue: Data loss with node expansion.
This version has a non-atomic shard moving deletion that can cause data loss when expanding nodes. Fixed in v0.15.1. See #845 for details.

⚠️ Known Issue: Data loss when upgrading to v0.15.0 or v0.15.1.
Do not upgrade to v0.15.0 or v0.15.1. Upgrade directly to v0.15.2 or later to avoid data loss from a database format conversion bug. See #846 for details.

What's Changed

Full Changelog: v0.14.3...v0.14.4

v0.14.3

28 Aug 02:23
1b96120

Choose a tag to compare

What's Changed

  • build(deps): bump github.com/go-viper/mapstructure/v2 from 2.3.0 to 2.4.0 by @dependabot[bot] in #741
  • fix(server): fix the ephemeral key leak by non-atomic operation by @mattisonchao in #742
  • feat: introduce committed version IDs to avoid accidentally writing dirty version ID trackers by @mattisonchao in #740

Full Changelog: v0.14.2...v0.14.3

v0.14.2

15 Aug 08:10
aa77dc4

Choose a tag to compare

What's Changed

Full Changelog: v0.14.1...v0.14.2

v0.14.1

01 Jul 07:41
18054e7

Choose a tag to compare

What's Changed

Full Changelog: v0.14.0...v0.14.1

v0.14.0

20 Jun 15:11
01dca7a

Choose a tag to compare

What's Changed

Full Changelog: v0.13.2...v0.14.0