📝日常
Day 23
Tony Duong
4月 15, 2026 ・ 1 分
#engineering#rails#concurrency#mysql#rspec

今日やったこと:
- 何年も未解決だった
spacely_webのバグ修正中に出会った lost update 問題について、Lost Updates in a Rails App: What Broke, How We Fixed It, and How We Tested It を書いた — lost update とは何か、なぜ MySQL InnoDB の REPEATABLE READ が JSON カラムへの read-modify-write を救ってくれないのか、WorkflowRun#progressに異なるキーをマージする 2 つの並行ジョブがどのようにキーを 1 つ落としてしまうのか、リリースしたwith_lockでの修正、そして 2 つのQueueを使ったスレッド付き RSpec で競合を再現し、失敗時と成功時の出力を見せる方法までを扱った
🌐 Claudeによる翻訳