nested transaction
どんな機能か忘れてたけど下記のコード見て理解。requires_newは内側のtransactionだという印。
User.transaction do User.create(:username => 'Admin') User.transaction(:requires_new => true) do User.create(:username => 'Regular') raise ActiveRecord::Rollback end end User.find(:all) # => :username => 'Admin' だけが返る