Skip to content

0.16.9: Merge pull request #2411 from tigerbeetle/release-2024-10-15

Compare
Choose a tag to compare
@github-actions github-actions released this 15 Oct 12:26
a082ff0

0.16.9

Supported upgrade versions

Oldest supported client version: 0.15.3
Oldest upgradable replica version: 0.16.2

Server

  • Binary: Download the zip for your OS and architecture from this page and unzip.
  • Docker: docker pull ghcr.io/tigerbeetle/tigerbeetle:0.16.9
  • Docker (debug image): docker pull ghcr.io/tigerbeetle/tigerbeetle:0.16.9-debug

Clients

NOTE: Because of package manager caching, it may take a few
minutes after the release for this version to appear in the package
manager.

  • .NET: dotnet add package tigerbeetle --version 0.16.9
  • Go: go mod edit -require github.com/tigerbeetle/tigerbeetle-go@v0.16.9
  • Java: Update the version of com.tigerbeetle.tigerbeetle-java in pom.xml
    to 0.16.9.
  • Node.js: npm install tigerbeetle-node@0.16.9

Changelog

Safety And Performance

  • #2394,
    #2401

    TigerBeetle clients internally batch operations for improved performance. Fix a bug where an
    unclosed link chain could be batched before another linked chain, causing them to be treated as
    one long linked chain. Additionally, prevent non-batchable requests from sharing packets entirely.

  • #2398

    AMOUNT_MAX is used as a sentinel value for things like balancing transfers to specify moving
    as much as possible. Correct and fix its value in the Java client. Thanks @tKe!

Features

  • #2274

    Improve the benchmark by adding Zipfian distributed random numbers, to better simulate realistic
    conditions and as a precursor to approximating YCSB.

  • #2393

    Previously, TigerBeetle's clients disallowed empty batches locally, before the request was even
    sent to the cluster. However, this is actually a valid protocol message - even if it's not used by
    the current state machine - so allow empty batches to be sent from clients.

  • #2384

    Revamp client documentation so that each snippet is self-contained, and standardize it across all
    languages.

Internals

TigerTracks 🎧