Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrNoSpace = logicerr.New("no free space")
ErrNoSpace MUST be returned when there is no space to put an object on the device.
View Source
var ErrReadOnly = logicerr.New("opened as read-only")
ErrReadOnly MUST be returned for modifying operations when the storage was opened in readonly mode.
Functions ¶
func Copy ¶ added in v0.38.0
Copy copies all objects from source Storage into the destination one. If any object cannot be stored, Copy immediately fails.
func CopyBatched ¶ added in v0.46.0
CopyBatched copies all objects from source Storage into the destination one using batched API. If any batch cannot be stored, Copy immediately fails. batchSize less than or equal to 1 makes it the same as Copy.
Types ¶
type Storage ¶
type Storage interface {
Open(readOnly bool) error
Init() error
Close() error
Type() string
Path() string
SetLogger(*zap.Logger)
SetCompressor(cc *compression.Config)
// GetBytes reads object by address into memory buffer in a canonical NeoFS
// binary format. Returns [apistatus.ObjectNotFound] if object is missing.
GetBytes(oid.Address) ([]byte, error)
Get(oid.Address) (*objectSDK.Object, error)
GetRange(oid.Address, uint64, uint64) ([]byte, error)
GetStream(oid.Address) (*objectSDK.Object, io.ReadCloser, error)
Head(oid.Address) (*objectSDK.Object, error)
Exists(oid.Address) (bool, error)
Put(oid.Address, []byte) error
PutBatch(map[oid.Address][]byte) error
Delete(oid.Address) error
Iterate(func(oid.Address, []byte) error, func(oid.Address, error) error) error
IterateAddresses(func(oid.Address) error, bool) error
}
Storage represents key-value object storage. It is used as a building block for a blobstor of a shard.
Click to show internal directories.
Click to hide internal directories.