I don't think we should use commit_on_success, because it means that any database updates for the remainder of the view will not be encapsulated in a transaction, which is a difficult thing to document and remember. Instead, I think we should do manual transaction management (with the transaction.commit_manually decorator).