rollback may throw exception which would stop close from being called