package apply

import "go.etcd.io/etcd/server/v3/etcdserver/apply"

Index

Functions

func NewApplierMembership

func NewApplierMembership(lg *zap.Logger, cluster *membership.RaftCluster, snapshotServer SnapshotServer) *applierMembership

Types

type RaftStatusGetter

type RaftStatusGetter interface {
	MemberID() types.ID
	Leader() types.ID
	CommittedIndex() uint64
	AppliedIndex() uint64
	Term() uint64
}

RaftStatusGetter represents etcd server and Raft progress.

type Result

type Result struct {
	Resp proto.Message
	Err  error
	// Physc signals the physical effect of the request has completed in addition
	// to being logically reflected by the node. Currently, only used for
	// Compaction requests.
	Physc <-chan struct{}
	Trace *traceutil.Trace
}

type SnapshotServer

type SnapshotServer interface {
	ForceSnapshot()
}

type UberApplier

type UberApplier interface {
	Apply(r *pb.InternalRaftRequest) *Result
}

func NewUberApplier

func NewUberApplier(
	lg *zap.Logger,
	be backend.Backend,
	kv mvcc.KV,
	alarmStore *v3alarm.AlarmStore,
	authStore auth.AuthStore,
	lessor lease.Lessor,
	cluster *membership.RaftCluster,
	raftStatus RaftStatusGetter,
	snapshotServer SnapshotServer,
	consistentIndex cindex.ConsistentIndexer,
	warningApplyDuration time.Duration,
	txnModeWriteWithSharedBuffer bool,
	quotaBackendBytesCfg int64,
) UberApplier

Source Files

apply.go apply_auth.go corrupt.go metrics.go uber_applier.go

Version
v3.6.10 (latest)
Published
Apr 1, 2026
Platform
linux/amd64
Imports
24 packages
Last checked
2 weeks ago

Tools for package owners.