cockroachdb / cockroach

CockroachDB — the cloud native, distributed SQL database designed for high availability, effortless scale, and control over data placement.
https://www.cockroachlabs.com
Other
30.19k stars 3.82k forks source link

opt: enable new implementation of SELECT FOR UPDATE under serializable #114737

Open michae2 opened 1 year ago

michae2 commented 1 year ago

In 23.2 we are previewing a new implementation of SELECT FOR UPDATE which fixes several known issues. This new implementation is the default under Read Committed isolation, and is available under under Serializable isolation with optimizer_use_lock_op_for_serializable, but is not yet the default under Serializable isolation. We would like to also make it the default under Serializable isolation. This issue tracks the work needed to make it the default.

Jira issue: CRDB-33658 Epic CRDB-38938

michae2 commented 1 year ago

Adding docs-known-limitation because we probably want to document that in 23.2 optimizer_use_lock_op_for_serializable can be set to use the new SFU implementation under serializable isolation, which fixes the following issues:

mgartner commented 8 months ago

@michae2 Is anything in this issue planned for 24.1?

michae2 commented 7 months ago

We might also consider turning on enable_durable_locking_for_serializable by default.