Skip to content
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: disable retry-request, add exponential backoff in mutateRows and readRows #1060

Merged
merged 18 commits into from
Mar 31, 2022

Conversation

mutianf
Copy link
Contributor

@mutianf mutianf commented Mar 25, 2022

This pr has the following changes:

  • Add exponential retry backoff in readRows and mutateRows in table.ts. For readRows, retry delay and retry attempt count will reset whenever a new row is read (this behavior is consistent with the java client).
  • Removed decorateStatus. MutateRows PartialFailureErrors will return grpc status code.
  • Add RPC level retries for mutatesRows.
  • If there's an RPC level failure, add the RPC status code to mutateRows PartialFailureError.
  • Do not retry ABORT errors for mutate rows.
  • Ignore retry-request settings to avoid request being retried in multiple places.

@mutianf mutianf requested review from a team as code owners March 25, 2022 22:11
@product-auto-label product-auto-label bot added the api: bigtable Issues related to the googleapis/nodejs-bigtable API. label Mar 25, 2022
src/table.ts Outdated Show resolved Hide resolved
src/table.ts Outdated Show resolved Hide resolved
src/table.ts Outdated Show resolved Hide resolved
@mutianf mutianf changed the title fix: add rpc level retries for mutate fix: add rpc level retries for mutate and enable exponential backoff Mar 29, 2022
src/table.ts Outdated Show resolved Hide resolved
src/table.ts Outdated Show resolved Hide resolved
src/table.ts Outdated Show resolved Hide resolved
src/table.ts Outdated Show resolved Hide resolved
src/table.ts Outdated Show resolved Hide resolved
src/table.ts Show resolved Hide resolved
@mutianf mutianf added the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Mar 30, 2022
@yoshi-kokoro yoshi-kokoro removed the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Mar 30, 2022
src/table.ts Outdated Show resolved Hide resolved
src/table.ts Outdated Show resolved Hide resolved
src/table.ts Outdated Show resolved Hide resolved
src/table.ts Outdated Show resolved Hide resolved
src/table.ts Outdated Show resolved Hide resolved
@mutianf mutianf changed the title fix: add rpc level retries for mutate and enable exponential backoff fix: disable retry-request, add exponential backoff in mutateRows and readRows Mar 31, 2022
src/index.ts Outdated Show resolved Hide resolved
Copy link
Contributor

@igorbernstein2 igorbernstein2 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm!

@mutianf mutianf added the owlbot:run Add this label to trigger the Owlbot post processor. label Mar 31, 2022
@gcf-owl-bot gcf-owl-bot bot removed the owlbot:run Add this label to trigger the Owlbot post processor. label Mar 31, 2022
Copy link
Contributor

@igorbernstein2 igorbernstein2 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm!

@mutianf mutianf merged commit 3718011 into googleapis:main Mar 31, 2022
@mutianf mutianf deleted the mutate branch March 31, 2022 21:37
gcf-merge-on-green bot pushed a commit that referenced this pull request Apr 6, 2022
🤖 I have created a release *beep* *boop*
---


## [3.10.0](v3.9.4...v3.10.0) (2022-04-06)


### Features

* Add ListHotTablets API method and protobufs ([#1057](#1057)) ([2b175ac](2b175ac))
* AuditConfig for IAM v1 ([#1061](#1061)) ([d1b5f1a](d1b5f1a))
* enable channel pooling ([#1065](#1065)) ([6c3c397](6c3c397))


### Bug Fixes

* disable retry-request, add exponential backoff in mutateRows and readRows ([#1060](#1060)) ([3718011](3718011))
* retry rst_stream errors ([#1059](#1059)) ([90de80f](90de80f))

---
This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
api: bigtable Issues related to the googleapis/nodejs-bigtable API.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants