wal

package
v0.0.0-...-020e20f Latest Latest
Warning

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

Go to latest
Published: Jun 1, 2022 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Overview

Package wal defines toy implementations of kayak wal.

Index

Constants

This section is empty.

Variables

View Source
var (
	// ErrWalClosed represents the log file is closed.
	ErrWalClosed = errors.New("wal is closed")
	// ErrInvalidLog represents the log object is invalid.
	ErrInvalidLog = errors.New("invalid log")
	// ErrAlreadyExists represents the log already exists.
	ErrAlreadyExists = errors.New("log already exists")
	// ErrNotExists represents the log does not exists.
	ErrNotExists = errors.New("log not exists")
)

Functions

This section is empty.

Types

type LevelDBWal

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

LevelDBWal defines a toy wal using leveldb as storage.

func NewLevelDBWal

func NewLevelDBWal(filename string) (p *LevelDBWal, err error)

NewLevelDBWal returns new leveldb wal instance.

func (*LevelDBWal) Close

func (p *LevelDBWal) Close()

Close implements Wal.Close.

func (*LevelDBWal) Get

func (p *LevelDBWal) Get(i uint64) (l *kt.Log, err error)

Get implements Wal.Get.

func (*LevelDBWal) Read

func (p *LevelDBWal) Read() (l *kt.Log, err error)

Read implements Wal.Read.

func (*LevelDBWal) Write

func (p *LevelDBWal) Write(l *kt.Log) (err error)

Write implements Wal.Write.

type MemWal

type MemWal struct {
	sync.RWMutex
	// contains filtered or unexported fields
}

MemWal defines a toy wal using memory as storage.

func NewMemWal

func NewMemWal() (p *MemWal)

NewMemWal returns new memory wal instance.

func (*MemWal) Close

func (p *MemWal) Close()

Close implements Wal.Close.

func (*MemWal) Get

func (p *MemWal) Get(index uint64) (l *kt.Log, err error)

Get implements Wal.Get.

func (*MemWal) Read

func (p *MemWal) Read() (l *kt.Log, err error)

Read implements Wal.Read.

func (*MemWal) Write

func (p *MemWal) Write(l *kt.Log) (err error)

Write implements Wal.Write.

Jump to

Keyboard shortcuts

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