2017/11/11分のコミットです。
CHANGELOGへの追加はありませんでした。
Relation merging should keep joining order
activerecord/lib/active_record/relation/merger.rb
の修正です。
複数joinを行った場合に、そのjoinの順序が保持されていなかったのを保持するよう修正しています。joinの順番に意味がある(scopeのmergeの順に意味がある場合等)場合がある為。
Add missing autoload Type
(#31123)
Active Modelの修正です。
autoloadの対象にType
moduleを追加しています。
Attribute modules (Attribute
, Attributes
, AttributeSet
)はType
を使用しており、かつ、左記moduleはautoloadされるのですが、左記moduleがautoloadされて使用される状態になってもType
moduleがloadされてない事がある為、それを避ける為にType
もautoloadされるよう対応したようです。
Should test actual error which is raised from the database
activerecord/test/cases/adapters/mysql2/transaction_test.rb
の修正です。
ER_LOCK_WAIT_TIMEOUT
が発生した場合にActiveRecord::TransactionTimeout
がraiseされる事を確認するテストで、SIGNAL 構文を使ってエラーを起こしていたのを、実際にtimeoutが発生する状態を作成しテストをするようにしています。
Raise TransactionTimeout
when lock wait timeout exceeded for PG adapter
Active Recordの修正です。
Merge pull request #30360 from gcourtemanche/transaction_timedoutで、ロック待機のタイムアウトの期限が切れた場合にTransactionTimeout
クラスをraiseする対応をMySQL adapterに行ったのですが、同様の対応をPostgresSQL adapterにも行っています。