[New Release] Undo Suite 8.2 for C/C++/Go/Rust

[New Release] Undo Suite 8.2 for C/C++/Go/Rust

This Undo release introduces a number of headline product improvements and updated system requirements.

Improvements in UDB

UDB 8.2 benefits from the improvements listed below.

Using the new extend facility, additional UDB features can be enabled with a single command. Addons are open-source extensions to UDB, which can be updated more frequently than the normal cycle of UDB updates.

Example of available addons are:

  • ubt, an alternative to GDB’s backtrace which shows the time at which each function was entered;
  • value-tracer, which shows how local variables change over the lifetime of a function;
  • systemc-trace, which extracts signal information from SystemC models.

Find out more about Addons here.

Release 8.2 provides a new resume command which resumes the execution of a command which has been prematurely stopped by hitting a breakpoint or by receiving a signal.

This is useful when executing a command, such as the next command, to reach a specific point in the program, but the program stops before that at a breakpoint that is not interesting or relevant to what is currently being investigated.

Pointer Authentication is an optional extension to the ARMv8.3-A and ARMv9.0-A architectures and newer. It is included in the Neoverse V1 microarchitecture which is used by the AWS Graviton3 processor, for example, and will be used in applications that have been compiled with appropriate compiler options.

In previous Undo releases, attempting to record an application using Pointer Authentication would result in an “unsupported instruction” error. With the 8.2 release, no such error occurs and applications using Pointer Authentication are fully supported in record and replay modes.

As a result of this change, applications which enable Pointer Authentication can be recorded and replayed by the Undo suite on architectures such as Neoverse V1.

More…

Further product changes relating to UDB are described in the CHANGELOG-udb.txt file included in your Undo release archive.

 

Improvements in Undo Team & OEM Editions

Undo Team & OEM Editions v8.2 benefit from the improvements in UDB described above, in addition to those listed below.

UDB automatically quits after inactivity

In order to align customer value more closely with license usage, UDB 8.2 and newer automatically exits after a period of inactivity, meaning that floating licenses are released when they are no longer required. This takes effect when UDB is used in the Linux console or in the Undo Visual Studio Code extension.

Improved license key management

The Undo Keyserver is provided with a server_key file which specifies license details including the number of floating licenses and the expiry date. Previously, when license details changed, the recommended procedure was to update the keyserver at the same time.

In release 8.2, updating the server_key file is decoupled from installation of the keyserver. The new undo-keyserver-ctl tool installed with the keyserver allows a license key to be downloaded and updated in one step.

Further product changes relating to Undo Team & OEM Editions are described in the following changelog files included in your Undo release archive:

  • undolr/CHANGELOG.txt for changes to the LiveRecorder tool
  • keyserver/CHANGELOG.txt for changes to the Undo Keyserver

 

General notices

A number of files have been moved within the Undo release directory in the 8.2 release. User-impacting changes are as follows:

  • The Asynchronous I/O preload library was previously shipped as a set of libundodb_aio_preload_* files in the release root. In the 8.2 release these are moved to the tools subdirectory and renamed libundo_aio_preload_*.
  • The udbserver_* and udb-automate executables were previously located in the release root and in the 8.2 release they have been moved to the tools subdirectory.

 

Third party dependencies

Release 8.2 updates the following third-party C/C++ software packages that are integrated into the Undo Suite:

Package Used in Version in Undo 8.1 Version in Undo 8.2 CVEs addressed
elftoolchain LiveRecorder, UDB, Undo Keyserver r4049 r4137 None
sqlite UDB, Undo Keyserver 3.47.0 3.48.0 None
curl UDB 8.10.1 8.11.1 CVE-2024-11053 (LOW)

CVE-2024-9681 (MEDIUM)

expat UDB 2.6.3 2.6.4 CVE-2024-50602 (MEDIUM)
gpg-error UDB 1.50 1.51 None
python UDB 3.10.15 3.10.16 None (this version updates the libexpat to 2.6.4 in light of CVE-2024-50602)
xz UDB 5.6.3 5.6.4 None

More information on the third-party software packages integrated into the Undo Suite is included in the ACKNOWLEDGEMENTS.txt file included in your Undo release archive.

 

Release 8.2 is expected to:

  • receive necessary patches for a 6-month period ending at the end of September 2025;
  • produce Undo recordings that can be loaded in future versions of UDB released within the 3-year period ending at the end of March 2028.

 

System requirements

No new support for Linux distributions is added in release 8.2.

The following distributions have entered an extended life phase and are no longer supported in release 8.2:

For a list of the system requirements for a given release, see the documentation at docs/userguide/html/SystemRequirements.html in the release directory. The system requirements for the latest Undo release are always provided in full at https://docs.undo.io/SystemRequirements.html.

Stay informed. Get the latest in your inbox.