Publication date: May 16, 2023
Description
In CockroachDB v23.1.0 and its testing versions, inserting rows into a multi-column-family table with COPY
can corrupt the table. Future reads on the corrupted table can result in internal errors or silent data corruption. If the table is empty before the COPY
executes, the table must be dropped and re-copied to be encoded correctly. If data was copied into a table with existing rows, the data in those rows may be irrecoverable.
Statement
This is resolved in CockroachDB by PR 103323.
This fix has been applied to maintenance releases of CockroachDB v23.1.1 and later.
This public issue is tracked by #103220.
Mitigation
Users running CockroachDB v23.1.0 can avoid this issue by setting the session variable vectorize
to off
, or setting copy_fast_path_enabled
to off
in any session that executes the COPY
command.
Users running CockroachDB v23.1.0 are encouraged to upgrade to v23.1.1 or a later version as soon as possible.
Impact
In CockroachDB v23.1.0 and its testing versions, executing COPY
into a target table that has multiple column families can corrupt the table. Future reads on the corrupted table can result in internal errors or silent data corruption. If data was copied into a table with existing rows, the data in those rows may be irrecoverable.
The v23.1.0 binary was withdrawn hours after its release, and prior to the formal announcement of this major release, so impacts to production workloads are not likely.
Please reach out to the support team if more information or assistance is needed.