Skip to content

Conversation

@lcian
Copy link
Member

@lcian lcian commented Jan 28, 2026

Changes the Bigtable backend so that we only retry when it makes sense to do so.

I've determined which errors can be retried by checking the code of bigtable_rs (turns out some of the errors can literally never happen, but for some reason thiserror enums don't emit dead code warnings for unused enum variants) and the official Bigtable docs.

I've also added a widget displaying this metric in Datadog as we weren't using it, it might be useful to easily detect if there's any issues with BigTable on the GCP side.

Part of FS-188

@lcian lcian requested a review from a team as a code owner January 28, 2026 13:22
@linear
Copy link

linear bot commented Jan 28, 2026

}
retry_count += 1;
merni::counter!("bigtable.read_retry": 1);
tracing::debug!(retry_count = retry_count, "Retrying read");
Copy link
Member Author

@lcian lcian Jan 28, 2026

Choose a reason for hiding this comment

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

This was supposed to be a tracing::debug I think so I changed it.
tracing::warn was ending up in Sentry, even though we already capture this as a metric in DD.

@lcian lcian requested a review from matt-codecov January 28, 2026 17:15
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.

2 participants