testblobs

package
v0.16.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 30, 2019 License: AGPL-3.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type SlowBlobs

type SlowBlobs struct {
	// contains filtered or unexported fields
}

SlowBlobs implements a slow blob store.

func NewSlowBlobs

func NewSlowBlobs(log *zap.Logger, blobs storage.Blobs) *SlowBlobs

NewSlowBlobs creates a new slow blob store wrapping the provided blobs. Use SetLatency to dynamically configure the latency of all operations.

func (*SlowBlobs) Create

func (slow *SlowBlobs) Create(ctx context.Context, ref storage.BlobRef, size int64) (storage.BlobWriter, error)

Create creates a new blob that can be written optionally takes a size argument for performance improvements, -1 is unknown size.

func (*SlowBlobs) Delete

func (slow *SlowBlobs) Delete(ctx context.Context, ref storage.BlobRef) error

Delete deletes the blob with the namespace and key.

func (*SlowBlobs) FreeSpace

func (slow *SlowBlobs) FreeSpace() (int64, error)

FreeSpace return how much free space left for writing.

func (*SlowBlobs) Open

func (slow *SlowBlobs) Open(ctx context.Context, ref storage.BlobRef) (storage.BlobReader, error)

Open opens a reader with the specified namespace and key.

func (*SlowBlobs) SetLatency

func (slow *SlowBlobs) SetLatency(delay time.Duration)

SetLatency configures the blob store to sleep for delay duration for all operations. A zero or negative delay means no sleep.

type SlowDB

type SlowDB struct {
	storagenode.DB
	// contains filtered or unexported fields
}

SlowDB implements slow storage node DB.

func NewSlowDB

func NewSlowDB(log *zap.Logger, db storagenode.DB) *SlowDB

NewSlowDB creates a new slow storage node DB wrapping the provided db. Use SetLatency to dynamically configure the latency of all piece operations.

func (*SlowDB) Pieces

func (slow *SlowDB) Pieces() storage.Blobs

Pieces returns the blob store.

func (*SlowDB) SetLatency

func (slow *SlowDB) SetLatency(delay time.Duration)

SetLatency enables a sleep for delay duration for all piece operations. A zero or negative delay means no sleep.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL