package
0.0.0-20250310224150-f24d5ce25984
Repository: https://github.com/buildbarn/bb-storage.git
Documentation: pkg.go.dev
# Packages
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
# Functions
CASPutProto is a helper function for storing Protobuf messages in the Content Addressable Storage (CAS).
GetReducedActionDigest computes the digest of an Initial Size Class Cache (ISCC), or File System Access Cache (FSAC) object that corresponds to a given Action.
NewActionResultExpiringBlobAccess creates a decorator for an Action Cache (AC) that automatically expires ActionResult objects after a certain amount of time has passed.
NewActionResultTimestampInjectingBlobAccess creates a decorator for an Action Cache (AC) that for each ActionResult message written through it, sets the execution_metadata.worker_completed_timestamp field to the current time, if not set already.
NewAuthorizingBlobAccess creates a new BlobAccess which guards blob accesses by checks with Authorizers.
NewDeadlineEnforcingBlobAccess creates a decorator for BlobAccess that enforces execution timeouts.
NewDemultiplexingBlobAccess creates a BlobAccess that demultiplexes requests based on the instance names.
NewEmptyBlobInjectingBlobAccess is a decorator for BlobAccess that causes it to directly process any requests for blobs of size zero.
NewErrorBlobAccess creates a BlobAccess that returns a fixed error response.
NewExistenceCachingBlobAccess creates a decorator for BlobAccess that adds caching to the FindMissing() operation.
NewHierarchicalInstanceNamesBlobAccess creates a decorator for BlobAccess that falls back to reading objects from parent instance names.
NewMetricsBlobAccess creates an adapter for BlobAccess that adds basic instrumentation in the form of Prometheus metrics.
NewReadCanaryingBlobAccess creates a decorator for two BlobAccess instances.
NewReferenceExpandingBlobAccess takes an Indirect Content Addressable Storage (ICAS) backend and converts it to a Content Addressable Storage (CAS) backend.
NewValidationCachingReadBufferFactory creates a decorator for ReadBufferFactory that disables data integrity checking for repeated requests for the same object.
NewZIPReadingBlobAccess creates a BlobAccess that is capable of reading objects from a ZIP archive.
NewZIPWritingBlobAccess creates a new BlobAccess that stores all objects in a ZIP archive.
VisitTopologicallySortedTree iterates over all Directory messages contained in an REv2 Tree object.
# Constants
RecommendedFindMissingDigestsCount corresponds to the maximum number of digests that is safe to provide to BlobAccess.FindMissing() without running into size limits of underlying protocols.
The Protobuf field numbers of the REv2 Tree's "root" and "children" fields.
The Protobuf field numbers of the REv2 Tree's "root" and "children" fields.
# Variables
ACReadBufferFactory is capable of buffers for objects stored in the Action Cache (AC).
CASReadBufferFactory is capable of creating buffers for objects stored in the Content Addressable Storage (CAS).
FSACReadBufferFactory is capable of creating identifiers and buffers for objects stored in the File System Access Cache (FSAC).
ICASReadBufferFactory is capable of creating identifiers and buffers for objects stored in the Indirect Content Addressable Storage (ICAS).
ISCCReadBufferFactory is capable of creating identifiers and buffers for objects stored in the Initial Size Class Cache (ISCC).
# Structs
ZIPWritingBlobAccess is an implementation of BlobAccess that stores all objects in a ZIP archive.
# Interfaces
BlobAccess is an abstraction for a data store that can be used to hold an Action Cache (AC), Content Addressable Storage (CAS), or any other data store that uses keys in the form of digests.
ReadBufferFactory is passed to many implementations of BlobAccess to be able to use the same BlobAccess implementation for both the Content Addressable Storage (CAS), Action Cache (AC) and Indirect Content Addressable Storage (ICAS).
ReadWriterAt is a file that can be randomly read and written.
# Type aliases
DemultiplexedBlobAccessGetter is a callback that is provided to instances of DemultiplexingBlobAccess to resolve instance names to backends to which requests need to be forwarded.
TreeDirectoryVisitor is a callback type that is invoked by VisitTopologicallySortedTree for each Directory message contained in the REv2 Tree object.