Describe the problem
CollectKeyColumnIDs on an implicitly partitioned unique index includes
crdb_region, but uniqueness is enforced across regions — two txns in different
regions taking the same unique value get different lock hashes.
Impact
Missed conflicts on REGIONAL BY ROW unique indexes. Reachability uncertain (is
RBR intended to be supported for txn LDR?); if not, it needs an explicit
validation gate rather than silent mis-locking.
Code references
Suggested fix
If RBR is unsupported, add an explicit validation gate at txn-mode creation. If
supported, exclude implicit partition columns from unique lock derivation.
Epic CRDB-65552
Jira issue: CRDB-65611
Describe the problem
CollectKeyColumnIDson an implicitly partitioned unique index includescrdb_region, but uniqueness is enforced across regions — two txns in differentregions taking the same unique value get different lock hashes.
Impact
Missed conflicts on REGIONAL BY ROW unique indexes. Reachability uncertain (is
RBR intended to be supported for txn LDR?); if not, it needs an explicit
validation gate rather than silent mis-locking.
Code references
Suggested fix
If RBR is unsupported, add an explicit validation gate at txn-mode creation. If
supported, exclude implicit partition columns from unique lock derivation.
Epic CRDB-65552
Jira issue: CRDB-65611