開発中にコントローラのアクションが爆発すると、通常は有用な情報を含むバックトレースが取得されます。プロダクションで同じことが起こると、電子メールで取得し、訪問者に404を表示します。いずれにしても、インスタンスとその変数を検査する何らかのエラー処理があります。RAMを破棄するArelクエリーを回避する方法
不完全なArelクエリが検査されると、多くのオブジェクトが読み込まれます。次に例を示します。
def index
@users = User.order("name asc")
if params[:query]
@users = @users.where("username like ?", "%{params[:query]}%")
else
@users = @users.limit(20)
end
end
すると、条件が吹くまで、@users変数はUser.order("name asc")
で立ち往生して検査する場合、それはRAMを埋めるデータベースからすべてのユーザーをアップロード内側何か。
これを回避する方法はありますか?
は、パッチを作成して、要求を引っ張っ:https://github.com/rails/rails/pull/ 2623 – Kostas