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

Wrap StatusRuntimeExceptions from GrpcRemoteCache #7860

Closed
wants to merge 1 commit into from

Conversation

werkt
Copy link
Contributor

@werkt werkt commented Mar 27, 2019

Exceptions that occur during remote interactions are expected to be
wrapped in IOException for observation by the RemoteSpawn{Runner,Cache}
layers.

Fixes #7856

Exceptions that occur during remote interactions are expected to be
wrapped in IOException for observation by the RemoteSpawn{Runner,Cache}
layers.

Fixes bazelbuild#7856
@jin jin added the team-Remote-Exec Issues and PRs for the Execution (Remote) team label Mar 27, 2019
retrier.executeAsync(
() -> ctx.call(
() -> requestRead(resourceName, offset, progressiveBackoff, digest, out, hashSupplier)),
progressiveBackoff),
Copy link
Contributor

Choose a reason for hiding this comment

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

why is this necessary?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

The previous implementation of the progressive read did not use the progressive backoff to determine the retry delay of successive requests. Put simply, we got progressive reads due to the offset, but there was no meaning to the progress from the perspective of the backoff used to proceed. A single download got max_retry_attempts to complete the download, and that's it - without this there was no effect to the progressiveBackoff being introduced.

@bazel-io bazel-io closed this in 80bff99 Mar 28, 2019
@werkt werkt mentioned this pull request Mar 28, 2019
werkt pushed a commit to werkt/bazel that referenced this pull request Mar 29, 2019
Exceptions that occur during remote interactions are expected to be
wrapped in IOException for observation by the RemoteSpawn{Runner,Cache}
layers.

Fixes bazelbuild#7856

Closes bazelbuild#7860.

PiperOrigin-RevId: 240793745
katre pushed a commit that referenced this pull request Mar 29, 2019
Exceptions that occur during remote interactions are expected to be
wrapped in IOException for observation by the RemoteSpawn{Runner,Cache}
layers.

Fixes #7856

Closes #7860.

PiperOrigin-RevId: 240793745
werkt pushed a commit to werkt/bazel that referenced this pull request Jan 27, 2020
Consistent with bazelbuild#7860, present an IOException with context to ensure
fallback if configured, rather than an unhandled RuntimeException and
bazel crash, when issuing FindMissingBlobs requests.
bazel-io pushed a commit that referenced this pull request Feb 19, 2020
Consistent with #7860, present an IOException with context to ensure
fallback if configured, rather than an unhandled RuntimeException and
bazel crash, when issuing FindMissingBlobs requests.

Closes #10663.

PiperOrigin-RevId: 295957563
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cla: yes team-Remote-Exec Issues and PRs for the Execution (Remote) team
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants