We are pleased to announce the official release of EventStoreDB OSS & Commercial version 21.10.1 long-term support (LTS). This is a patch release that contains important fixes and changes made after the 21.10.0 LTS release.
This LTS release will continue to be supported until October 2023. Read more about our versioning strategy here.
The complete changelog can be found here. If you need help planning your upgrade or want to discuss support, please contact us here.
EventStoreDB 21.10.1 is available for the following operating systems:
Downloads are available on our website.
The packages can also be installed using the following instructions.
curl -s https://packagecloud.io/install/repositories/EventStore/EventStore-OSS/script.deb.sh |
sudo bash
sudo apt-get install eventstore-oss=21.10.1
choco install eventstore-oss -version 21.10.1
docker pull eventstore/eventstore:21.10.1-focal
docker pull eventstore/eventstore:21.10.1-buster-slim
In one of the previous versions, we decided to use memory-mapped checkpoints on Linux. We have decided to reverse this decision, as they may cause occasional pauses on the ZFS file system. From now on we'll use file checkpoints on Linux and memory-mapped checkpoints on Windows.
In 21.10.0 we improved the reading performance of streams with a lot of events that have expired due to max age stream metadata. This now also obeys the SkipIndexScanOnRead configuration setting. See: https://github.com/EventStore/EventStore/pull/3339.
Batch append for gRPC clients (introduced in the previous release) has brought significant performance improvements. We ensured that proper status is returned with the fix in https://github.com/EventStore/EventStore/pull/3295.
We fixed threading issues during the database startup. In the edge case (e.g. long-running custom projections), it may cause the leader failure. We ensured that exceptions in scheduled messages won’t crash the server and that IODispatcher is thread-safe for request tracking. See details in: https://github.com/EventStore/EventStore/pull/3270.
We added logging for the following processes during the database startup:
The main work for supporting the ARM64 build on Linux is finished. In previous releases, we introduced experimental support for the ARM64 processors. It is an essential step for Linux users and MacBook M1, as it enables proper Docker usage. We’re still running the final QA, so official support will come soon. Until that, you can either use the image from our GitHub Docker registry:
docker pull ghcr.io/eventstore/eventstore:21.10.1-alpha-arm64v8
or clone database repository and run the build:
docker build -t local/eventstoredb --build-arg RUNTIME=linux-arm64
We fixed a set of smaller issues related to Persistent Subscriptions handling:
We introduced new capabilities to gRPC endpoint definition to enable future persistent subscription management features through gRCP clients (GetInfo, ReplayParked, List, RestartSubsystem, ConsumerStrategy). See: https://github.com/EventStore/EventStore/pull/3352.
We added a fix for catch-up subscriptions to use the last indexed position of the $all stream when a consumer subscribes to a filtered subscription from the end: https://github.com/EventStore/EventStore/pull/3342.
We added a set of fixes for the projection handling, making it possible to return a number value while using partitionBy selector. Now it should be either a string, number, or a not defined value. See more: https://github.com/EventStore/EventStore/pull/3325.
To upgrade a cluster from 20.10.x or 21.10.0, a rolling upgrade can be done:
There is no way to perform a rolling upgrade between version 5.x and version 21.10.1 due to changes in the replication protocols and the way nodes gossip and host elections.
As such, the upgrade process from 5.x is as follows:
Documentation for EventStoreDB can be found here.
If you have any questions that aren't covered in these release notes or the docs, please feel free to reach out on discuss, Github, or Slack.
If you encounter any issues, please don’t hesitate to open an issue on GitHub if there isn’t one already.
Additionally, there is a fairly active discuss channel, and an #eventstore channel on the DDD-CQRS-ES Slack community.