refactor the update_with_conflict_validation method