2020-05-27 ActiveRecord::Locking::Optimistic / GitHub Actionsで動かすRubocopを高速化する
ActiveRecord::Locking::Optimistic
Railsの楽観ロックの仕組み。
lock_version
カラムが存在すると機能する。更新に失敗したらActiveRecord::StaleObjectError
が上がる仕組み。
p1 = Person.find(1)
p2 = Person.find(1)
p1.first_name = "Michael"
p1.save
p2.first_name = "should fail"
p2.save # Raises an ActiveRecord::StaleObjectError
GitHub Actionsで動かすRubocopを高速化する
~/.cache/rubocop_cache
で速くなる--parallel
オプションで速くなる