package apply
import "go.etcd.io/etcd/server/v3/etcdserver/apply"
Index ¶
- func CheckTxnAuth(as auth.AuthStore, ai *auth.AuthInfo, lessor lease.Lessor, rt *pb.TxnRequest) error
- type ApplierOptions
- type InternalRaftRequestWrapper
- type RaftStatusGetter
- type Result
- type SnapshotServer
- type UberApplier
Functions ¶
func CheckTxnAuth ¶
func CheckTxnAuth(as auth.AuthStore, ai *auth.AuthInfo, lessor lease.Lessor, rt *pb.TxnRequest) error
Types ¶
type ApplierOptions ¶
type ApplierOptions struct {
Logger *zap.Logger
KV mvcc.KV
AlarmStore *v3alarm.AlarmStore
AuthStore auth.AuthStore
Lessor lease.Lessor
Cluster *membership.RaftCluster
RaftStatus RaftStatusGetter
SnapshotServer SnapshotServer
ConsistentIndex cindex.ConsistentIndexer
bool
Backend backend.Backend
QuotaBackendBytesCfg int64
WarningApplyDuration time.Duration
}
type InternalRaftRequestWrapper ¶
type InternalRaftRequestWrapper struct {
*pb.InternalRaftRequest
// SkipRangeExecution skips execution of range requests inside a txn for
// members that do not need the response; validation via checkRange still runs.
SkipRangeExecution bool
}
InternalRaftRequestWrapper carries per-apply metadata for an InternalRaftRequest.
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
}
func Apply ¶
func Apply(lg *zap.Logger, e *raftpb.Entry, uberApply UberApplier, w wait.Wait, shouldApplyV3 membership.ShouldApplyV3) (ar *Result, id uint64)
type SnapshotServer ¶
type SnapshotServer interface {
ForceSnapshot()
}
type UberApplier ¶
type UberApplier interface {
Apply(r *InternalRaftRequestWrapper, shouldApplyV3 membership.ShouldApplyV3) *Result
}
func NewUberApplier ¶
func NewUberApplier(opts ApplierOptions) UberApplier
Source Files ¶
apply.go auth.go backend.go capped.go corrupt.go interface.go metrics.go quota.go uber_applier.go
- Version
- v3.7.1 (latest)
- Published
- Jul 23, 2026
- Platform
- linux/amd64
- Imports
- 27 packages
- Last checked
- 3 hours ago –
Tools for package owners.