Skip to content

Release 0.19.1

This patch release lowers the memory use of backups and restores of large topics, and fixes a few bugs in restores, backup metrics, and the operator.

For new installations, see the Installation guide.

For upgrading existing installations, see the associated Upgrading to 0.19.x guide.

A backup keeps an index for every topic it backs up, listing all the segments of that topic. For long-running backups of busy topics, that index can grow large.

Topics with a large index now need considerably less memory, which lowers the risk of a backup or restore running out of memory.

  • The index is no longer copied in memory.
  • The index takes up less memory per segment.
  • The index is streamed when it is loaded from and written to storage, instead of being buffered in full before deserialization and after serialization.

Further index improvements are coming in upcoming releases. The index will be split into chunks, so a backup or restore only needs to load the part it works on. The index will also be compressed in storage, and move to a more compact format.

  • Restore: a restore with an offset filter or an end timestamp could stop restoring a topic too early and leave out records of some partitions. This only happened for backups with segments that do not contain all partitions of the topic.
  • Metrics: the backup metrics with the _total suffix now include expired data, as documented.
  • Operator: the lastTransitionTime of a condition no longer changes when the condition itself has not changed.

For a full list of changes, see the Changelog.