Conversation
There was a problem hiding this comment.
Code Review
This pull request introduces a generalized OperationContext mechanism to inject request IDs and track attempt lifecycles across retries, generalizing the Bigtable generator option and implementing a robust request ID tracking system in the Spanner client. The review feedback highlights critical thread-safety and correctness issues: a broken double-checked locking pattern in DefaultSpannerOperationContextFactory::StaticPrefix() that introduces data races, a thread-safety hazard in ProcessRandomId() due to returning a reference to a mutable static string instead of returning by value, and a bug in BatchWriteGuard where premature stream cancellation incorrectly reports a successful status.
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #16448 +/- ##
==========================================
- Coverage 92.28% 92.24% -0.05%
==========================================
Files 2246 2254 +8
Lines 212894 213541 +647
==========================================
+ Hits 196474 196973 +499
- Misses 16420 16568 +148 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
No description provided.