ok, I will revert all back to .delete_all.  Only Report has :dependant => :destroy, but if the dangling messages are handled, then it's fine.  however, if the foreign-key branch is merged in the future, this change needs to be re-considered.