-
-
Notifications
You must be signed in to change notification settings - Fork 280
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix: Retry configuring Couchbase on HttpIOException #1064
Conversation
✅ Deploy Preview for testcontainers-dotnet ready!
To edit notification comments on pull requests, go to your Netlify site configuration. |
The template said to add a label, but I don't seem to have the ability to do that. I just see "none yet" and no gear icon (yet). |
Thanks for creating the PR. I will look at it tomorrow. I would like to include a comment that explains why the retry delegation is necessary. But for today, I am done.
Oh, interesting. I was not aware of that. I will look into it. Thanks. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for creating the issue, initiating the discussion, and finally the PR 🙌. I think it is a pragmatic fix for the issue you encountered. Thanks!
The template said to add a label, but I don't seem to have the ability to do that. I just see "none yet" and no gear icon (yet).
It looks like this requires additional permissions. I will remove the section from the template.
And thank YOU for being so responsive, and providing excellent guidance :) |
What does this PR do?
Added
RetryHandler
handler to the configuration, per discussion in issue #1062Why is it important?
This is necessary because of the way Couchbase startup works very asynchronously. Various parts are not guaranteed to be ready in any particular order. This was causing 504 errors when making HTTP requests prematurely. A simple retry takes care of this.
Related issues
This should closes #1062
How to test this PR
Difficult to test, since the underlying issue is intermittent. However, the existing Couchbase tests passed with this updated code.
Follow-ups
My main concern is that the retry logic is pretty simple. If this issue crops up again, I would suggest lengthening the delay, increasing number of retries, and/or adding some kind of retry backoff period, and see if any of those help.