So #rails caches column names across the database and generates SQL for them even if they are never used. Why does this make sense? #fail