implement deadlock retries