-
Notifications
You must be signed in to change notification settings - Fork 88
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
I've noticed that a significant amount of time, both on my end and on our users' end, is wasted on making CloudBlobAccess work well. We need to be realistic here: there is no way to make CloudBlobAccess work well. Even though S3 buckets initially seem like a good match for storing CAS objects, their implementations are not powerful enough to make things work reliably. They don't provide the right consistency. Making them behave like an LRU cache is also expensive/inefficient. On top of that, there is no way to efficiently implement FindMissingBlobs(), which is almost certainly a requirement for having an efficient build cluster. Note that I am not against having a storage backend that uses cloud buckets. It's just that plainly mapping the CAS/AC key space on top of an S3 bucket is a bad idea. Using buckets as part of a more complex scheme (e.g., a LocalBlobAccess BlockList that can flush historical data into S3) may well be worth it. To phrase it differently: I am removing CloudBlobAccess, because my observation is that it causes us to work towards a local maximum, as opposed to aiming for a global maximum.
- Loading branch information
1 parent
89343bc
commit 0efcb2a
Showing
9 changed files
with
24 additions
and
537 deletions.
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.