# Technical Advisory 101963

Publication date: May 9, 2023

## Description

In the following circumstances, backups that include revision history may record incorrect metadata. The presence of this incorrect metadata could cause a subsequent `RESTORE` operation to write incorrect data:

- In a cluster running an impacted v22.2 or v22.1 version, a backup of an `UPDATE`-heavy workload captures more revision history for a given row than is specified by the `kv.bulk_sst.max_allowed_overage` cluster setting (`64 MiB` by default). A subsequent `RESTORE` operation may erroneously omit or include a row, or may restore an incorrect version of it.
- In a cluster running an impacted v22.2 version, the non-public cluster setting `admission.elastic_cpu.enabled` is set to `true`. A subsequent `RESTORE` operation may erroneously omit or include any key with revision history in the backup.

## Statement

This is resolved in CockroachDB by #102179, which ensures that `RESTORE` operations can correctly restore from backups that include this incorrect metadata.

The fix has been applied to maintenance releases of CockroachDB: v22.2.9.

This fix will be applied to maintenance releases of CockroachDB: v22.1.20. Until that version is available, refer to Mitigation for a suggested workaround.

This public issue is tracked by #101963.

## Mitigation

Users of CockroachDB v22.2.0 to v22.2.8 are encouraged to upgrade to v22.2.9 or a later version. After the upgrade, `RESTORE` operations will succeed even if the backup includes incorrect revision history metadata. Until such an upgrade, avoid restoring backups with revision history on the earlier version, and do not change the `admission.elastic_cpu.enabled` cluster setting from its default.

When the maintenance release v22.1.20 is available, users of CockroachDB v22.1.0 to v22.1.19 are encouraged to upgrade to it. After the upgrade, `RESTORE` operations will succeed even if the backup includes incorrect revision history metadata. Until such an upgrade, avoid restoring a backup taken on an earlier version if it includes revision history.

## Impact

In specific circumstances, a `RESTORE` operation may restore incorrect data from a backup that contains incorrect metadata related to revision history. This vulnerability affects all of the following CockroachDB versions: v22.2.0 to v22.2.8 and v22.1.0 to 22.1.19.

Questions about any technical alert can be directed to our support team.