Jepsen 0.3.3 is now available

21 views
Skip to first unread message

Kyle Kingsbury

unread,
Aug 18, 2023, 3:33:54 PM8/18/23
to anno...@jepsen.io
Dearest distributed systems enthusiasts,

I'm pleased to announce that Jepsen 0.3.3 is now ready for your testing delight.
You'll find it on Clojars and Github, as usual:
https://github.com/jepsen-io/jepsen/releases/tag/v0.3.3.

This release updates Jepsen to run with Debian Bookworm. It also includes
performance improvements aimed at testing large histories. Jepsen can run and
check histories of up to a billion operations now.

## Significant API Changes

- During test setup, `(:generator test)` is now wrapped in a new `Forgettable`
reference type. You can deref this if you want access to the generator for some
reason, but be aware that retaining the head of the generator often causes
linear memory consumption during the test.
- After the test starts generating operations, attempting to deref `(:generator
test)` will throw.
- core/run-case! and generator.interpreter/run! now return tests, rather than
just histories.

## Performance Improvements

- Jepsen no longer retains the head of the generator. This dramatically improves
memory consumption on long-running tests: running tests of a billion operations
in a 512 MB heap is entirely reasonable.
- Elle 0.1.7 comes with significant speed and memory improvements to the G1A,
G1b, and internal checkers for list-append and rw-register.
- Jepsen.history is much faster to execute folds on large (e.g. 100+ million op)
histories. We converted a quadratic-time loop to linear.

## Bugfixes

- control.net/ip filters out loopback interfaces. Bookworm started returning
127.x.x.x interfaces from `getent ahosts` on some platforms.

## Minor Changes

- os.debian now refers to the new `netcat` package name.
- nemesis.time allows ntpdate to fail during setup/teardown (which now happens
on Bookworm).
- nemesis.time no longer tries to use `ntpdate -p`, which is deprecated in Bookworm
- tools.cli 1.0.219
- elle 0.1.7
- jepsen.history 0.1.1
- http-kit 2.7.0

**Full Changelog**: https://github.com/jepsen-io/jepsen/compare/v0.3.2...v0.3.3

--Kyle


Reply all
Reply to author
Forward
0 new messages