-
Notifications
You must be signed in to change notification settings - Fork 22
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
feat(failover): return 503 to batcher when eigenda is down #193
Conversation
4b77864
to
873ab93
Compare
f317339
to
727a63d
Compare
chore: go mod tidy to generate go.mod feat: dealing with new eigenda-client grpc errors + ErrorFailover convention comment: fix typo feat(handlers): postShared returns 429 when disperser rate limited client flag(eigenda): rename RetriesBeforeFailover -> PutRetries reviewer correctly pointed out that retrying was more general than only for failovers lint: nolint exhaustive switch check for Put case
9c6a735
to
574a762
Compare
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.
can't finish.
@@ -5,7 +5,8 @@ go 1.22 | |||
toolchain go1.22.0 | |||
|
|||
require ( | |||
github.com/Layr-Labs/eigenda v0.8.5-0.20241031144746-e2ead56a306d | |||
github.com/Layr-Labs/eigenda v0.8.5-rc.0.0.20241101212705-fa8776ae648c |
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.
after core mainnet release, remember to change it into v0.8.5
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.
yep, added a TODO note in https://linear.app/eigenlabs/issue/EBE-106/proxy-v160-release
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.
overall, lgtm. But didn't take closer look into the test, but it covered all the test
server/handlers.go
Outdated
} else { | ||
case is429(err): | ||
http.Error(w, err.Error(), http.StatusTooManyRequests) | ||
case errors.Is(err, &api.ErrorFailover{}): |
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.
shouldn't this be namedis503(err)
?
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.
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.
lgtm, please address Ethen's comment
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.
LGTM
Depends on Layr-Labs/eigenda#828
Would appreciate a quick review for the logic, but leaving as draft because I think I will refactor the api errors that we return from eigenda-client (don't like api.ErrorAPI name and also using http status codes in them).
TODO:
Fixes Issue
Fixes #
Changes proposed
Screenshots (Optional)
Note to reviewers