[New Release] LiveRecorder 6.11 for C/C++
Please welcome LiveRecorder 6.11, with the cheesy nickname of Cambridge Blue*.
This release includes the following fixes and improvements for LiveRecorder for C/C++.
Support for watchpoints in Post Failure Logging
Post Failure Logging enables developers to add logging to their application after it has already run, allowing them to dig deeper into the cause of a failure - even when the problem is rare or inconvenient to reproduce.
In this release, the ability is added to watch the expressions, and generate logging statements any time the value of the expression changes.
Improved support for recent versions of glibc using Restartable Sequences
Some recent Linux distribution builds are shipped with a version of glibc that uses Restartable Sequences**. These allow Linux processes to maintain per-CPU data structures in userspace without the need for heavyweight locking. Previous Undo releases were only able to attach to applications using affected versions of glibc by disabling glibc’s use of Restartable Sequences prior to attaching.
In the 6.11 release, LiveRecorder and UDB are able to attach to processes with Restartable Sequences already enabled.
Applications that use Restartable Sequences directly, or through library code other than glibc, remain unsupported in this release.
Faster loading of some large recording files
Release 6.11 of UDB is faster to load recordings of programs with a very large memory footprint or a large number of files with debugging information. It now loads the sections of a recording which contain those 30-40% faster, and overall load time is improved for recordings of short duration when those sections are the largest part of a recording.
The improvements are most likely to be significant if you have recording files that are quite large despite only being a few seconds long, or if those sections are 10s or 100s of GB large. Improvements will probably not be noticeable for recordings that take more than a few minutes to load, because most of the time is usually spent loading the rest of the recording, which happens in parallel to loading these sections.
Note on system requirements
There are no changes to the LiveRecorder system requirements in this release. For a list of the system requirements for a given release, see the system requirements at docs/userguide/html/SystemRequirements.html in the release directory. The system requirements for the latest Undo release are also provided at https://docs.undo.io/SystemRequirements.html.
We ❤️ cheese, so we name all of our releases after some of them. If you want to find out more about Cambridge Blue, the inspiration for this release, you can read about it on the Cambridge Cheese Company's website.
** Fedora 37 and Ubuntu 22.04 / 22.10 use glibc 2.35 and are known to be affected. Fedora 35 and 36 and Red Hat Enterprise Linux 9.1 use earlier versions of glibc to which the RSEQ patches were backported.