#935.  avoid partial commits to the database with errors going unreported by doing all or nothing commits.