Rails で、「rails g」でサクッと作っていると、
意識しないで作ってしまうのがIDカラム。
最近、integer型の桁あふれ問題(integer out of range)が発生して、ログ出力が900MB/日になるという問題が発生。
原因は、日々アクセスされた情報を記録するテーブルのIDカラムがintegerで作成されていた。
数年運営されて蓄積された情報の自動採番値がIDカラムに対して桁あふれエラーとなり、これまでinsertされ続けていた数だけエラーログとなって出力されて、膨大な量の出力を引き起こしていた。
rails g の前後で、テーブルの用途を考えて、migrationファイル内にID属性値の型をbigintにする?などの暗黙に作られる情報も含めた検討を忘れないようにすること。