Now with transaction and commit/rollback