Skip to content

Fix Fast slow store Not Found error by returning failed precondition#2194

Merged
amankrx merged 2 commits intoTraceMachina:mainfrom
amankrx:fix-fast-slow-store-not-found-error
Feb 28, 2026
Merged

Fix Fast slow store Not Found error by returning failed precondition#2194
amankrx merged 2 commits intoTraceMachina:mainfrom
amankrx:fix-fast-slow-store-not-found-error

Conversation

@amankrx
Copy link
Collaborator

@amankrx amankrx commented Feb 26, 2026

Description

This PR fixes the Not Found error for fast and slow store by returning failed precondition instead of Internal error. This ensures that the bazel uploads the artifacts in the next retry instead of just retrying endlessly that was the case with the internal error.

Fixes #2184

Type of change

Please delete options that aren't relevant.

  • Bug fix (non-breaking change which fixes an issue)

How Has This Been Tested?

I have tested this in production

Please also list any relevant details for your test configuration

Checklist

  • Updated documentation if needed
  • Tests added/amended
  • bazel test //... passes locally
  • PR is contained in a single commit, using git amend see some docs

This change is Reviewable

result: Some(execute_result::Result::InternalError(e.into())),
}).await.err_tip(|| "Error calling execution_response with error")?;
let is_cas_blob_missing = e.code == Code::NotFound
&& e.message_string().contains("not found in either fast or slow store");
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Not sure if this is the ideal way to ensure that the Not Found error indeed came from the Not found in fast or slow store, but I couldn't find any better way to ensure this scenario. This could break if we change the error message later down the line.

Copy link
Collaborator

Choose a reason for hiding this comment

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

You. need to add a test for this conditional that way we will know for sure if it breaks something in the future.

Copy link
Collaborator

Choose a reason for hiding this comment

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

We've done it. Claude was better at this than it had been with releases.

Tests the conditional that converts NotFound errors containing
"not found in either fast or slow store" to FailedPrecondition,
and verifies other NotFound errors still return InternalError.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@amankrx amankrx merged commit 3354945 into TraceMachina:main Feb 28, 2026
28 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Not Found Error: Not found in either fast or slow store

2 participants