2016/11/27分のコミットです。
CHANGELOGにのったコミットは以下の通りです。
Update RELEASING_RAILS.md for rails-ujs
RELEASING_RAILS.md
の修正です。
rails-ujs
のリリースについての説明を追加しています。
Clear available connections immediately
activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb
の修正です。
ActiveRecord::ConnectionAdapters::ConnectionPool#disconnect
、#clear_reloadable_connections
メソッドで available connectionsをclearするよう修正しています。
他のスレッドが、まだ使用出来るコネクションがあると判断し誤って使用してしまうのを防ぐ為のようです。なお、元々clearするようになっていたのですが、Distribute connections to previously blocked threads when we're doneで誤って削除してしまっていたので、処理を戻しています。
We expect exceptions; abort will just raise in the wrong place
activerecord/test/cases/adapters/mysql2/transaction_test.rb
、
activerecord/test/cases/adapters/postgresql/transaction_test.rb
の修正です。
transactionのテストで明示的にThread.abort_on_exception
にfalseを設定して、スレッドが例外で終了してもインタプリタ全体は終了しないようにしています。
Only start rabbitmq when we need it
.travis.yml
の修正です。
毎回rabbitmqを起動していたのを、rabbitmqが必要なテスト(Active Jobのintegrationテスト)でのみ起動するよう修正しています。
abort_on_exception can't be disabled for a single thread
activerecord/test/cases/adapters/mysql2/transaction_test.rb
、
activerecord/test/cases/adapters/postgresql/transaction_test.rb
の修正です。
先ほどtransactionのテストで明示的にThread.abort_on_exception
にfalseを設定するようにしたのですが、abort_on_exception
はグローバルに設定される値で他のテストにも影響が出てしまうので、テストの後処理でabort_on_exception
に元の値を設定するよう修正しています。
activerecord/lib/active_record/validations/uniqueness.rb
の修正です。
polymorphic associationを使用している場合に、uniqueness validationにscopeを指定した場合に、association毎にuniqueチェックが行われないバグがあったのを修正しています。