Restate 1.7.7
Restate 1.7.7 adds VQueue inspection commands to the Restate CLI, expands RocksDB storage tuning, fixes a VQueue refill issue that could leave invocations pending, and bundles Restate UI 1.0.21.
🔍 VQueue CLI Introspection
The Restate CLI now provides commands for inspecting virtual queues:
restate vqueues list
restate vqueues describe <VQUEUE_ID>restate vqueues list displays virtual queues and their entry counts. restate vqueues describe shows metadata, entry counts, and individual entries for a selected queue.
No configuration or migration changes are required.
💾 Configurable RocksDB Storage Tuning
Log-server and partition-store RocksDB configurations now expose additional controls for storage devices and workload-specific tuning:
rocksdb-writable-file-max-buffer-sizerocksdb-l0-num-compaction-triggerrocksdb-max-open-filesrocksdb-partition-sst-by-logrocksdb-partition-sst-by-loglet
Restate now derives each database's memtable count and write-buffer size from its memory budget and target SST size. Increasing the log-server memtable budget can add more memtables without continuing to increase the size of each write buffer.
Log-server compaction output is partitioned by log by default, preventing compacted SST files from spanning logs. Existing SST files adopt these boundaries through normal compaction.
To retain SST boundaries based only on the configured target file size:
[log-server]
rocksdb-partition-sst-by-log = falseExisting configurations remain accepted and no configuration migration is required. Operators with workload-specific RocksDB settings should review and benchmark their existing rocksdb-memory-budget and rocksdb-max-file-size values after upgrading.
🛡️ Reliable VQueue Refills
This release fixes an asynchronous VQueue refill issue involving concurrent invocation cancellation.
Cancelling an invocation later in a VQueue could previously move the refill cursor past queued invocations that had not yet been read from storage. Those invocations could remain pending until the partition scheduler restarted.
VQueue refills now advance only through the storage range known to be fully covered. No configuration or data migration is required.
🖥️ Restate UI 1.0.21
The bundled Restate UI has been updated from v1.0.19 to v1.0.21, incorporating the minor fixes from the v1.0.20 and v1.0.21 UI releases.
📖 Full Release Notes → https://github.com/restatedev/restate/blob/main/release-notes/v1.7.7.md
Install
Pull the Docker images
docker pull docker.restate.dev/restatedev/restate:1.7.7
docker pull docker.restate.dev/restatedev/restate-cli:1.7.7Install prebuilt binaries via Homebrew
brew install restatedev/tap/restate-server
brew install restatedev/tap/restate
brew install restatedev/tap/restatectlInstall prebuilt binaries into your npm project
npm install @restatedev/restate-server@1.7.7
npm install @restatedev/restate@1.7.7
npm install @restatedev/restatectl@1.7.7Download binary archives
| File | Platform | Checksum |
|---|---|---|
| restate-server-aarch64-apple-darwin.tar.xz | Apple Silicon macOS | checksum |
| restate-server-x86_64-apple-darwin.tar.xz | Intel macOS | checksum |
| restate-server-aarch64-unknown-linux-musl.tar.xz | ARM64 MUSL Linux | checksum |
| restate-server-x86_64-unknown-linux-musl.tar.xz | x64 MUSL Linux | checksum |
| restate-cli-aarch64-apple-darwin.tar.xz | Apple Silicon macOS | checksum |
| restate-cli-x86_64-apple-darwin.tar.xz | Intel macOS | checksum |
| restate-cli-aarch64-unknown-linux-musl.tar.xz | ARM64 MUSL Linux | checksum |
| restate-cli-x86_64-unknown-linux-musl.tar.xz | x64 MUSL Linux | checksum |
| restatectl-aarch64-apple-darwin.tar.xz | Apple Silicon macOS | checksum |
| restatectl-x86_64-apple-darwin.tar.xz | Intel macOS | checksum |
| restatectl-aarch64-unknown-linux-musl.tar.xz | ARM64 MUSL Linux | checksum |
| restatectl-x86_64-unknown-linux-musl.tar.xz | x64 MUSL Linux | checksum |