-
Notifications
You must be signed in to change notification settings - Fork 16
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: Make bigtable calls retryable #591
Conversation
… feat/SYNC-4085_retry
… feat/SYNC-4085_retry
… feat/SYNC-4085_retry
… feat/SYNC-4085_retry
…topush-rs into feat/SYNC-4085_retry
… feat/SYNC-4085_retry
.conn | ||
.mutate_row_async_opt(&req, call_opts(self.metadata.clone())) | ||
.map_err(error::BigTableError::Write)? | ||
retry_policy(self.settings.retry_count) |
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.
Should make this a method
retry_policy(self.settings.retry_count) | |
self.retry_policy() |
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.
(Remembers why it's not):
I use the same retry_policy
for the heath_check
which doesn't take a BigClientTableImpl
.
I may need to restructure things a bit to do that.
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.
I noticed that, I'm fine with a one off for it. We have an open issue to rework the health check so that whole method will probably change quite a bit sooner rather than later anyway.
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.
Nope, gonna push back on this one.
The function takes one parameter, and we're using it in different paths, so making this dependent on BigTableClientImpl
would over complicate things right now.
We might want to revisit the structure of all of this later, but that should be a different ticket.
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.
Yeah, there's a lot of "Get It Working" in this. There's lots of room for fit and finish later.
… feat/SYNC-4085_retry
let r = self | ||
.conn | ||
.read_rows_opt(&req, call_opts(self.metadata.clone())) | ||
let r = retry_policy(10) |
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.
let r = retry_policy(10) | |
let r = retry_policy(5) |
Closes SYNC-4085