なるようになるブログ

読書感想文かrailsについてかrubyについてか

rails commit log流し読み(2024/07/25)

2024/07/25分のコミットです。

CHANGELOGへの追加はありませんでした。


Merge pull request #52408 from ghiculescu/as-find-signed-docs

activestorage/app/models/active_storage/blob.rbのdocの修正です。

ActiveStorage::Blob#find_signed!のdoc内のrecord argumentに不正な値が指定された場合の挙動が実際の挙動と異なっていたのを修正しています。


Merge pull request #52402 from jhawthorn/avoid_extra_pings

activerecord/lib/active_record/connection_adapters/mysql2/database_statements.rbactiverecord/lib/active_record/connection_adapters/trilogy/database_statements.rbの修正です。

mysql2/trilogy adapterで、multi-statementのresultsをwith_raw_connectionを使用せずに破棄するよう修正しています。元々はwith_raw_connection block内処理を行っていたのですが、それだとquery cacheにヒットした場合、verfiy!を実行するようになっており、それが原因で性能に少し影響が出ていました(ネットワークのround tripが発生してしまうため)。該当の箇所でconnect/reconnectをする事は無いなので、with_raw_connectionを使用せずに現在のconnectionを使用して破棄するよう修正しています。


More robust fix for duplicate callbacks when singular child autosaves parent

activerecord/lib/active_record/autosave_association.rbの終了です。

子associationのautosave経由で親associationの新規作成を行った際にcallbackが複数回実行されないようにする処理について、対応のコードをリファクタリングしより確実にチェックを行えるよう修正しています。


Fix test command to exit 1 on LoadError

railties/lib/rails/commands/test/test_command.rbrailties/lib/rails/test_unit/runner.rbの終了です。

test commandに存在しないファイルが指定された場合のexit codeが正常(0)だったのが、エラー(1)となるよう修正しています。


Merge pull request #52329 from fatkodima/loaded-relation-batching-cpk

activerecord/lib/active_record/relation/batches.rbの修正です。

load済みのrelationに対するバッチ処理が、composite primary keysを使用しているmodelに対して正しく動作しないバグがあったのを修正しています。