retry update-or-create in case of race condition