Preventing Cache Races


RWX is the only CI/CD platform that has intelligent, automatic caching. Specify a filter, and RWX takes care of the rest. Other platforms will spend lots of time and compute running redundant tasks – the same commands, on the same files, as has previously been executed.
With a recent change, RWX caches even more effectively by preventing cache races.
#Cache Races
Previously, it was possible for two tasks with the same cache key to execute at the same time.
- Task 1 checks the cache, gets a cache miss, and starts executing.
- Task 2 checks the cache, gets a cache miss, and starts executing.
- Task 1 writes its result to the cache.
- Task 2 writes its result to the cache.
Loading diagram...
#Preventing Races
Running into this race is especially common for engineering teams using a monorepo. With an embedded run per package in a monorepo, it's possible to have a very large number of redundant tasks.
In an effort to reduce compute, maximize cache hits, and make builds more reliable, RWX will now prevent cache races. When two tasks have the same cache key, the second task will wait for the first one to finish executing so that it can be a cache hit.
When this scenario occurs, you'll see a message in the UI:
This task has the same cache key as another in-progress task in this run. This task will start once that task finishes.
#Demo
Never miss an update.
Get the latest releases and news about RWX and our ecosystem with our newsletter.
Related posts

May 18, 2026
RWX now supports Codeberg and Forgejo
RWX now supports Codeberg and self-hosted Forgejo repositories, giving teams a reliable CI/CD path outside GitHub.

May 13, 2026
Why the TanStack supply chain attack can't happen on RWX
The TanStack npm compromise hinged on GitHub Actions cache poisoning. RWX's content-based caching and branch-locked vaults make that attack structurally impossible.