Expand description
A controller that provides an interface to the storage layer.
The storage controller curates the creation of sources, the progress of readers through these collections, and their eventual dropping and resource reclamation.
The storage controller can be viewed as a partial map from GlobalId
to collection. It is an error to
use an identifier before it has been “created” with create_source()
. Once created, the controller holds
a read capability for each source, which is manipulated with update_read_capabilities()
.
Eventually, the source is dropped with either drop_sources()
or by allowing compaction to the
empty frontier.
Structs§
- Collection
Description - Describes a request to create a source.
- Export
Description - Export
State - State maintained about individual exports.
- Monotonic
Appender - A channel that allows you to append a set of updates to a pre-defined
GlobalId
. - Persist
Epoch - A wrapper struct that presents the adapter token to a format that is understandable by persist and also allows us to differentiate between a token being present versus being set for the first time.
- Storage
Metadata - Metadata that the storage controller must know to properly handle the life cycle of creating and dropping collections.
- Wallclock
LagHistogram Period - The period covered by a wallclock lag histogram, represented as a
[start, end)
range.
Enums§
- Data
Source - Describes how data is written to the collection.
- Introspection
Type - Response
- Storage
Write Op - High-level write operations applicable to storage collections.
Traits§
- Storage
Controller - Storage
Txn - Provides an interface for the storage controller to read and write data that is recorded elsewhere.
Type Aliases§
- BoxFuture
- RowPredicate
- A predicate for a
Row
filter.