May 2024 - Race Conditions and Memory in Golang
๐ Reading 1: A Study of Real-World Data Races in Golang
Two Uber engineers break down practical examples of how they detected, approached, and fixed race conditions at their company. They created a detected, which they claim:
We have deployed this detector in Uberโs 46 million lines of Go codebase hosting 2100 distinct microservices, found over 2000 data races, and fixed over 1000 data races, spanning 790 distinct code patches submitted by 210 unique developers over a six-month period.
๐พ Reading 2: Updating the Go Memory Model(Memory Models, Part 3)
The most recent publication in three-part series on memory management. The other two papers are on hardware memory and memory models in programming, but we only need to read part three. It's also worth looking at the GitHub discussion the author posted, after you read the article.