[db-manager] Disable implicit transactions for schema migration on CRDB v.22+ #1079
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
While upgrading cockroach db to v24.1.3, RID migrations started to fail on this query from v22.2.0 with the
error
Failed to execute defaultdb migration step build/db_schemas/rid/upto-v2.0.0-add_inverted_indices.sql: ERROR: column "cells" is being backfilled (SQLSTATE 42P10)
.As documented on the release notes,
the backward incompatible change leading to the error is:
After review, no stores in scd or rid packages use batch statements.
There is only one exception, which is used for testing and which should not be impacted.
Therefore, only migration scripts are affected.
This PR ensures no implicit transaction is created for version 22.2 and above by disabling the
enable_implicit_transaction_for_batch_statements
variable at the beginning of the sql execution for migrations.This change has been tested locally with version 24.1.3 to validate future usage.