Refactor remote package to only have one remote cache impl.#10200
Closed
buchgr wants to merge 1 commit intobazelbuild:masterfrom
Closed
Refactor remote package to only have one remote cache impl.#10200buchgr wants to merge 1 commit intobazelbuild:masterfrom
buchgr wants to merge 1 commit intobazelbuild:masterfrom
Conversation
Contributor
Author
b4ee4ce to
a70f3db
Compare
Historically the remote package shipped two implementations for remote caching: GrpcRemoteCache and SimpleBlobStoreActionCache. Today there is no good reason to keep this structure and the duplication of code and tests that comes with it. This is the final refactoring of a long series: * 5fc91a7 * 12ebb84 * 8ac6bdc * 9fb83b4 * 36611c3 * a6b5b05 * d40933d * 797f292 This change makes it so that there is one RemoteCache that has a RemoteCacheClient. The RemoteCacheClient has one implementation per caching protocol: * DiskCacheClient (formerly OnDiskBlobStore) * GrpcCacheClient (formerly GrpcRemoteCache) * HttpCacheClient (formerly HttpBlobStore) * CombinedDiskHttpCacheClient (formerly CombinedDiskHttpBlobStore) A single RemoteCache type for all protocols will allow composition of caching protocols. In particular, grpc and disk caching. Additionally, this change will allow us to fix a longstanding bug where for the HTTP protocol uploads of outputs for an action are not done in parallel.
a70f3db to
8d8aacd
Compare
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Historically the remote package shipped two implementations
for remote caching: GrpcRemoteCache and SimpleBlobStoreActionCache.
Today there is no good reason to keep this structure and the
duplication of code and tests that comes with it. This is the
final refactoring of a long series:
This change makes it so that there is one RemoteCache that
has a RemoteCacheClient. The RemoteCacheClient has one
implementation per caching protocol:
A single RemoteCache type for all protocols will allow
composition of caching protocols. In particular, grpc and disk
caching. Additionally, this change will allow us to fix a longstanding
bug where for the HTTP