Improved retry logic to retry less and fail more appropriately. Reduced unit testing time from 249 seconds to 54 seconds. May improve production code performance