Cloud Spanner で read の排他ロックを取る
Cloud Spanner
で
SELECT FOR UPDATE
的に、read で排他ロックを取りたい
Cloud Spanner
では、rw transaction で 排他ロックを取るのは以下のケース
write のクエリ
read のクエリを実行したタイミングでは shared lock になるが、その検索範囲内に対して write のクエリを発行するとロックが exclusive に昇格される
LOCK_SCANNED_RANGES
を
exclusive
に指定した read のクエリを発行
あくまでクエリヒントなので確実ではない
https://cloud.google.com/spanner/docs/query-syntax?hl=ja#statement_hints