update retry logic