Documentation
¶
Overview ¶
Package storageconfig holds the Go bindings for the unbounded-storage daemon configuration schema. The schema source of truth is config.proto in this directory; both these Go bindings and the daemon's Rust (prost) bindings are generated from it, so the on-disk protobuf wire format is shared across the supervisor (writer) and the daemon (reader).
Index ¶
- Variables
- type AutoRdmaFabricBinds
- func (*AutoRdmaFabricBinds) Descriptor() ([]byte, []int)deprecated
- func (x *AutoRdmaFabricBinds) GetHcasPerNumaNode() uint64
- func (*AutoRdmaFabricBinds) ProtoMessage()
- func (x *AutoRdmaFabricBinds) ProtoReflect() protoreflect.Message
- func (x *AutoRdmaFabricBinds) Reset()
- func (x *AutoRdmaFabricBinds) String() string
- type AzureBackendConfig
- func (*AzureBackendConfig) Descriptor() ([]byte, []int)deprecated
- func (x *AzureBackendConfig) GetCaCertPath() string
- func (x *AzureBackendConfig) GetClientCertPath() string
- func (x *AzureBackendConfig) GetClientKeyPath() string
- func (x *AzureBackendConfig) GetHttpConcurrency() uint32
- func (x *AzureBackendConfig) GetInsecureSkipVerify() bool
- func (x *AzureBackendConfig) GetStripeSizeBytes() uint64
- func (x *AzureBackendConfig) GetUrl() string
- func (*AzureBackendConfig) ProtoMessage()
- func (x *AzureBackendConfig) ProtoReflect() protoreflect.Message
- func (x *AzureBackendConfig) Reset()
- func (x *AzureBackendConfig) String() string
- type BackendSpec
- func (*BackendSpec) Descriptor() ([]byte, []int)deprecated
- func (x *BackendSpec) GetAzure() *AzureBackendConfig
- func (x *BackendSpec) GetConfig() isBackendSpec_Config
- func (x *BackendSpec) GetFake() *FakeBackendConfig
- func (x *BackendSpec) GetHttp() *HttpBackendConfig
- func (x *BackendSpec) GetName() string
- func (x *BackendSpec) GetS3() *S3BackendConfig
- func (*BackendSpec) ProtoMessage()
- func (x *BackendSpec) ProtoReflect() protoreflect.Message
- func (x *BackendSpec) Reset()
- func (x *BackendSpec) String() string
- type BackendSpec_Azure
- type BackendSpec_Fake
- type BackendSpec_Http
- type BackendSpec_S3
- type BlockDiskConfig
- func (*BlockDiskConfig) Descriptor() ([]byte, []int)deprecated
- func (x *BlockDiskConfig) GetNuma() uint32
- func (x *BlockDiskConfig) GetPath() string
- func (*BlockDiskConfig) ProtoMessage()
- func (x *BlockDiskConfig) ProtoReflect() protoreflect.Message
- func (x *BlockDiskConfig) Reset()
- func (x *BlockDiskConfig) String() string
- type CacheSpec
- type Config
- func (*Config) Descriptor() ([]byte, []int)deprecated
- func (x *Config) GetBackends() []*BackendSpec
- func (x *Config) GetCaches() []*CacheSpec
- func (x *Config) GetDisks() []*DiskSpec
- func (x *Config) GetFingersPerNode() uint32
- func (x *Config) GetFrontends() []*FrontendSpec
- func (x *Config) GetPeers() []*PeerSpec
- func (x *Config) GetRoutingPlan() *RoutingPlan
- func (x *Config) GetSelf() string
- func (x *Config) GetStartup() *StartupCfg
- func (x *Config) GetTopologyWeighting() *TopologyWeighting
- func (x *Config) GetVersion() uint64
- func (*Config) ProtoMessage()
- func (x *Config) ProtoReflect() protoreflect.Message
- func (x *Config) Reset()
- func (x *Config) String() string
- type DiskSpec
- func (*DiskSpec) Descriptor() ([]byte, []int)deprecated
- func (x *DiskSpec) GetBlock() *BlockDiskConfig
- func (x *DiskSpec) GetBypassAdmission() bool
- func (x *DiskSpec) GetBypassChecksum() bool
- func (x *DiskSpec) GetBypassIndexRead() bool
- func (x *DiskSpec) GetConfig() isDiskSpec_Config
- func (x *DiskSpec) GetDisablePageCache() bool
- func (x *DiskSpec) GetFile() *FileDiskConfig
- func (x *DiskSpec) GetForceFormat() bool
- func (x *DiskSpec) GetPageSizeBytes() uint64
- func (x *DiskSpec) GetQueueDepth() uint32
- func (x *DiskSpec) GetSkipRecoveryScan() bool
- func (*DiskSpec) ProtoMessage()
- func (x *DiskSpec) ProtoReflect() protoreflect.Message
- func (x *DiskSpec) Reset()
- func (x *DiskSpec) String() string
- type DiskSpec_Block
- type DiskSpec_File
- type FabricCfg
- func (*FabricCfg) Descriptor() ([]byte, []int)deprecated
- func (x *FabricCfg) GetAutoRdma() *AutoRdmaFabricBinds
- func (x *FabricCfg) GetBinds() isFabricCfg_Binds
- func (x *FabricCfg) GetMaxInflight() uint32
- func (x *FabricCfg) GetProgressPollUs() uint32
- func (x *FabricCfg) GetProgressThreads() uint32
- func (x *FabricCfg) GetRdma() *RdmaFabricBinds
- func (x *FabricCfg) GetRpcWorkerThreads() uint32
- func (x *FabricCfg) GetTcp() *TcpFabricBinds
- func (*FabricCfg) ProtoMessage()
- func (x *FabricCfg) ProtoReflect() protoreflect.Message
- func (x *FabricCfg) Reset()
- func (x *FabricCfg) String() string
- type FabricCfg_AutoRdma
- type FabricCfg_Rdma
- type FabricCfg_Tcp
- type FakeBackendConfig
- func (*FakeBackendConfig) Descriptor() ([]byte, []int)deprecated
- func (x *FakeBackendConfig) GetObjectSizeBytes() uint64
- func (x *FakeBackendConfig) GetStripeSizeBytes() uint64
- func (*FakeBackendConfig) ProtoMessage()
- func (x *FakeBackendConfig) ProtoReflect() protoreflect.Message
- func (x *FakeBackendConfig) Reset()
- func (x *FakeBackendConfig) String() string
- type FileDiskConfig
- func (*FileDiskConfig) Descriptor() ([]byte, []int)deprecated
- func (x *FileDiskConfig) GetPath() string
- func (x *FileDiskConfig) GetSize() uint64
- func (*FileDiskConfig) ProtoMessage()
- func (x *FileDiskConfig) ProtoReflect() protoreflect.Message
- func (x *FileDiskConfig) Reset()
- func (x *FileDiskConfig) String() string
- type FrontendSpec
- func (*FrontendSpec) Descriptor() ([]byte, []int)deprecated
- func (x *FrontendSpec) GetConfig() isFrontendSpec_Config
- func (x *FrontendSpec) GetHttp() *HttpFrontendConfig
- func (x *FrontendSpec) GetLoadgen() *LoadgenFrontendConfig
- func (x *FrontendSpec) GetName() string
- func (x *FrontendSpec) GetS3() *S3FrontendConfig
- func (x *FrontendSpec) GetSource() string
- func (*FrontendSpec) ProtoMessage()
- func (x *FrontendSpec) ProtoReflect() protoreflect.Message
- func (x *FrontendSpec) Reset()
- func (x *FrontendSpec) String() string
- type FrontendSpec_Http
- type FrontendSpec_Loadgen
- type FrontendSpec_S3
- type HttpBackendConfig
- func (*HttpBackendConfig) Descriptor() ([]byte, []int)deprecated
- func (x *HttpBackendConfig) GetCaCertPath() string
- func (x *HttpBackendConfig) GetClientCertPath() string
- func (x *HttpBackendConfig) GetClientKeyPath() string
- func (x *HttpBackendConfig) GetHttpConcurrency() uint32
- func (x *HttpBackendConfig) GetInsecureSkipVerify() bool
- func (x *HttpBackendConfig) GetStripeSizeBytes() uint64
- func (x *HttpBackendConfig) GetUrl() string
- func (*HttpBackendConfig) ProtoMessage()
- func (x *HttpBackendConfig) ProtoReflect() protoreflect.Message
- func (x *HttpBackendConfig) Reset()
- func (x *HttpBackendConfig) String() string
- type HttpFrontendConfig
- func (*HttpFrontendConfig) Descriptor() ([]byte, []int)deprecated
- func (x *HttpFrontendConfig) GetAddr() string
- func (x *HttpFrontendConfig) GetMaxRequestsPerConnection() uint32
- func (*HttpFrontendConfig) ProtoMessage()
- func (x *HttpFrontendConfig) ProtoReflect() protoreflect.Message
- func (x *HttpFrontendConfig) Reset()
- func (x *HttpFrontendConfig) String() string
- type LoadgenFrontendConfig
- func (*LoadgenFrontendConfig) Descriptor() ([]byte, []int)deprecated
- func (x *LoadgenFrontendConfig) GetFabricOnly() bool
- func (x *LoadgenFrontendConfig) GetKeyspaceObjects() uint64
- func (x *LoadgenFrontendConfig) GetLocalOnly() bool
- func (x *LoadgenFrontendConfig) GetObjectSizeBytes() uint64
- func (x *LoadgenFrontendConfig) GetReadBytes() uint64
- func (x *LoadgenFrontendConfig) GetRemoteOnly() bool
- func (x *LoadgenFrontendConfig) GetSeed() uint64
- func (x *LoadgenFrontendConfig) GetSkipLocalDisk() bool
- func (x *LoadgenFrontendConfig) GetVerify() bool
- func (x *LoadgenFrontendConfig) GetWorkers() uint32
- func (x *LoadgenFrontendConfig) GetZipfExponent() float64
- func (*LoadgenFrontendConfig) ProtoMessage()
- func (x *LoadgenFrontendConfig) ProtoReflect() protoreflect.Message
- func (x *LoadgenFrontendConfig) Reset()
- func (x *LoadgenFrontendConfig) String() string
- type MemoryCfg
- func (*MemoryCfg) Descriptor() ([]byte, []int)deprecated
- func (x *MemoryCfg) GetMemoryTotalBytes() uint64
- func (x *MemoryCfg) GetNoHugepages() bool
- func (*MemoryCfg) ProtoMessage()
- func (x *MemoryCfg) ProtoReflect() protoreflect.Message
- func (x *MemoryCfg) Reset()
- func (x *MemoryCfg) String() string
- type MetricsCfg
- type PeerSpec
- func (*PeerSpec) Descriptor() ([]byte, []int)deprecated
- func (x *PeerSpec) GetConfig() isPeerSpec_Config
- func (x *PeerSpec) GetName() string
- func (x *PeerSpec) GetRdma() *RdmaPeerConfig
- func (x *PeerSpec) GetTags() []string
- func (x *PeerSpec) GetTcp() *TcpPeerConfig
- func (*PeerSpec) ProtoMessage()
- func (x *PeerSpec) ProtoReflect() protoreflect.Message
- func (x *PeerSpec) Reset()
- func (x *PeerSpec) String() string
- type PeerSpec_Rdma
- type PeerSpec_Tcp
- type RdmaFabricBind
- type RdmaFabricBinds
- type RdmaPeerConfig
- func (*RdmaPeerConfig) Descriptor() ([]byte, []int)deprecated
- func (x *RdmaPeerConfig) GetAddr() string
- func (x *RdmaPeerConfig) GetAddrs() []string
- func (*RdmaPeerConfig) ProtoMessage()
- func (x *RdmaPeerConfig) ProtoReflect() protoreflect.Message
- func (x *RdmaPeerConfig) Reset()
- func (x *RdmaPeerConfig) String() string
- type RoutingPlan
- func (*RoutingPlan) Descriptor() ([]byte, []int)deprecated
- func (x *RoutingPlan) GetFingers() []string
- func (x *RoutingPlan) GetPredecessor() string
- func (x *RoutingPlan) GetSuccessor() string
- func (*RoutingPlan) ProtoMessage()
- func (x *RoutingPlan) ProtoReflect() protoreflect.Message
- func (x *RoutingPlan) Reset()
- func (x *RoutingPlan) String() string
- type S3BackendConfig
- func (*S3BackendConfig) Descriptor() ([]byte, []int)deprecated
- func (x *S3BackendConfig) GetCaCertPath() string
- func (x *S3BackendConfig) GetClientCertPath() string
- func (x *S3BackendConfig) GetClientKeyPath() string
- func (x *S3BackendConfig) GetHttpConcurrency() uint32
- func (x *S3BackendConfig) GetInsecureSkipVerify() bool
- func (x *S3BackendConfig) GetStripeSizeBytes() uint64
- func (x *S3BackendConfig) GetUrl() string
- func (*S3BackendConfig) ProtoMessage()
- func (x *S3BackendConfig) ProtoReflect() protoreflect.Message
- func (x *S3BackendConfig) Reset()
- func (x *S3BackendConfig) String() string
- type S3FrontendConfig
- type StartupCfg
- func (*StartupCfg) Descriptor() ([]byte, []int)deprecated
- func (x *StartupCfg) GetFabric() *FabricCfg
- func (x *StartupCfg) GetMemory() *MemoryCfg
- func (x *StartupCfg) GetMetrics() *MetricsCfg
- func (x *StartupCfg) GetTopology() *TopologyCfg
- func (*StartupCfg) ProtoMessage()
- func (x *StartupCfg) ProtoReflect() protoreflect.Message
- func (x *StartupCfg) Reset()
- func (x *StartupCfg) String() string
- type TcpFabricBinds
- type TcpPeerConfig
- type TopologyCfg
- func (*TopologyCfg) Descriptor() ([]byte, []int)deprecated
- func (x *TopologyCfg) GetAllowInactivePort() bool
- func (x *TopologyCfg) GetDisableRdma() bool
- func (x *TopologyCfg) GetIgnoreIsolated() bool
- func (x *TopologyCfg) GetIncludeNodeCpu0() bool
- func (x *TopologyCfg) GetNicWorkers() uint64
- func (x *TopologyCfg) GetServingCores() uint64
- func (x *TopologyCfg) GetUseSmtSiblings() bool
- func (*TopologyCfg) ProtoMessage()
- func (x *TopologyCfg) ProtoReflect() protoreflect.Message
- func (x *TopologyCfg) Reset()
- func (x *TopologyCfg) String() string
- type TopologyPrefixWeight
- func (*TopologyPrefixWeight) Descriptor() ([]byte, []int)deprecated
- func (x *TopologyPrefixWeight) GetTagIndex() uint32
- func (x *TopologyPrefixWeight) GetWeight() float64
- func (*TopologyPrefixWeight) ProtoMessage()
- func (x *TopologyPrefixWeight) ProtoReflect() protoreflect.Message
- func (x *TopologyPrefixWeight) Reset()
- func (x *TopologyPrefixWeight) String() string
- type TopologyWeighting
- func (*TopologyWeighting) Descriptor() ([]byte, []int)deprecated
- func (x *TopologyWeighting) GetPrefixWeights() []*TopologyPrefixWeight
- func (*TopologyWeighting) ProtoMessage()
- func (x *TopologyWeighting) ProtoReflect() protoreflect.Message
- func (x *TopologyWeighting) Reset()
- func (x *TopologyWeighting) String() string
Constants ¶
This section is empty.
Variables ¶
var File_config_proto protoreflect.FileDescriptor
Functions ¶
This section is empty.
Types ¶
type AutoRdmaFabricBinds ¶ added in v0.1.18
type AutoRdmaFabricBinds struct {
// Maximum number of HCAs to bind per NUMA node. Defaults to 1 when unset.
// Raise this to use additional HCAs on a NUMA node. HCAs whose NUMA node is
// unknown are never capped.
HcasPerNumaNode *uint64 `protobuf:"varint,1,opt,name=hcas_per_numa_node,json=hcasPerNumaNode,proto3,oneof" json:"hcas_per_numa_node,omitempty"`
// contains filtered or unexported fields
}
func (*AutoRdmaFabricBinds) Descriptor
deprecated
added in
v0.1.18
func (*AutoRdmaFabricBinds) Descriptor() ([]byte, []int)
Deprecated: Use AutoRdmaFabricBinds.ProtoReflect.Descriptor instead.
func (*AutoRdmaFabricBinds) GetHcasPerNumaNode ¶ added in v0.1.18
func (x *AutoRdmaFabricBinds) GetHcasPerNumaNode() uint64
func (*AutoRdmaFabricBinds) ProtoMessage ¶ added in v0.1.18
func (*AutoRdmaFabricBinds) ProtoMessage()
func (*AutoRdmaFabricBinds) ProtoReflect ¶ added in v0.1.18
func (x *AutoRdmaFabricBinds) ProtoReflect() protoreflect.Message
func (*AutoRdmaFabricBinds) Reset ¶ added in v0.1.18
func (x *AutoRdmaFabricBinds) Reset()
func (*AutoRdmaFabricBinds) String ¶ added in v0.1.18
func (x *AutoRdmaFabricBinds) String() string
type AzureBackendConfig ¶ added in v0.1.18
type AzureBackendConfig struct {
// Azure Blob-compatible origin URL resolved to an IPv4 address for HTTP/1.1 fetches. `http://`
// uses plaintext; `https://` uses TLS with kTLS receive offload.
Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url,omitempty"`
// Stripe granularity in bytes for origin references. Defaults to 4 MiB when unset.
// Must be a power of two.
StripeSizeBytes *uint64 `protobuf:"varint,2,opt,name=stripe_size_bytes,json=stripeSizeBytes,proto3,oneof" json:"stripe_size_bytes,omitempty"`
// Maximum concurrent origin HTTP fetches. Defaults to 64 when unset.
HttpConcurrency *uint32 `protobuf:"varint,3,opt,name=http_concurrency,json=httpConcurrency,proto3,oneof" json:"http_concurrency,omitempty"`
// Optional CA certificate bundle/path used for TLS verification on `https://` origins.
CaCertPath *string `protobuf:"bytes,4,opt,name=ca_cert_path,json=caCertPath,proto3,oneof" json:"ca_cert_path,omitempty"`
// Skips TLS certificate verification on `https://` origins. Mutually exclusive with ca_cert_path.
InsecureSkipVerify bool `protobuf:"varint,5,opt,name=insecure_skip_verify,json=insecureSkipVerify,proto3" json:"insecure_skip_verify,omitempty"`
// Optional PEM client certificate presented for TLS client authentication on `https://` origins.
// Must be set together with client_key_path.
ClientCertPath *string `protobuf:"bytes,6,opt,name=client_cert_path,json=clientCertPath,proto3,oneof" json:"client_cert_path,omitempty"`
// Optional PEM private key for client_cert_path. Must be set together with client_cert_path.
ClientKeyPath *string `protobuf:"bytes,7,opt,name=client_key_path,json=clientKeyPath,proto3,oneof" json:"client_key_path,omitempty"`
// contains filtered or unexported fields
}
func (*AzureBackendConfig) Descriptor
deprecated
added in
v0.1.18
func (*AzureBackendConfig) Descriptor() ([]byte, []int)
Deprecated: Use AzureBackendConfig.ProtoReflect.Descriptor instead.
func (*AzureBackendConfig) GetCaCertPath ¶ added in v0.1.19
func (x *AzureBackendConfig) GetCaCertPath() string
func (*AzureBackendConfig) GetClientCertPath ¶
func (x *AzureBackendConfig) GetClientCertPath() string
func (*AzureBackendConfig) GetClientKeyPath ¶
func (x *AzureBackendConfig) GetClientKeyPath() string
func (*AzureBackendConfig) GetHttpConcurrency ¶ added in v0.1.18
func (x *AzureBackendConfig) GetHttpConcurrency() uint32
func (*AzureBackendConfig) GetInsecureSkipVerify ¶ added in v0.1.19
func (x *AzureBackendConfig) GetInsecureSkipVerify() bool
func (*AzureBackendConfig) GetStripeSizeBytes ¶ added in v0.1.18
func (x *AzureBackendConfig) GetStripeSizeBytes() uint64
func (*AzureBackendConfig) GetUrl ¶ added in v0.1.18
func (x *AzureBackendConfig) GetUrl() string
func (*AzureBackendConfig) ProtoMessage ¶ added in v0.1.18
func (*AzureBackendConfig) ProtoMessage()
func (*AzureBackendConfig) ProtoReflect ¶ added in v0.1.18
func (x *AzureBackendConfig) ProtoReflect() protoreflect.Message
func (*AzureBackendConfig) Reset ¶ added in v0.1.18
func (x *AzureBackendConfig) Reset()
func (*AzureBackendConfig) String ¶ added in v0.1.18
func (x *AzureBackendConfig) String() string
type BackendSpec ¶
type BackendSpec struct {
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Types that are valid to be assigned to Config:
//
// *BackendSpec_Http
// *BackendSpec_S3
// *BackendSpec_Azure
// *BackendSpec_Fake
Config isBackendSpec_Config `protobuf_oneof:"config"`
// contains filtered or unexported fields
}
func (*BackendSpec) Descriptor
deprecated
func (*BackendSpec) Descriptor() ([]byte, []int)
Deprecated: Use BackendSpec.ProtoReflect.Descriptor instead.
func (*BackendSpec) GetAzure ¶ added in v0.1.18
func (x *BackendSpec) GetAzure() *AzureBackendConfig
func (*BackendSpec) GetConfig ¶ added in v0.1.18
func (x *BackendSpec) GetConfig() isBackendSpec_Config
func (*BackendSpec) GetFake ¶ added in v0.1.18
func (x *BackendSpec) GetFake() *FakeBackendConfig
func (*BackendSpec) GetHttp ¶ added in v0.1.18
func (x *BackendSpec) GetHttp() *HttpBackendConfig
func (*BackendSpec) GetName ¶ added in v0.1.18
func (x *BackendSpec) GetName() string
func (*BackendSpec) GetS3 ¶ added in v0.1.18
func (x *BackendSpec) GetS3() *S3BackendConfig
func (*BackendSpec) ProtoMessage ¶
func (*BackendSpec) ProtoMessage()
func (*BackendSpec) ProtoReflect ¶
func (x *BackendSpec) ProtoReflect() protoreflect.Message
func (*BackendSpec) Reset ¶
func (x *BackendSpec) Reset()
func (*BackendSpec) String ¶
func (x *BackendSpec) String() string
type BackendSpec_Azure ¶ added in v0.1.18
type BackendSpec_Azure struct {
Azure *AzureBackendConfig `protobuf:"bytes,4,opt,name=azure,proto3,oneof"`
}
type BackendSpec_Fake ¶ added in v0.1.18
type BackendSpec_Fake struct {
Fake *FakeBackendConfig `protobuf:"bytes,5,opt,name=fake,proto3,oneof"`
}
type BackendSpec_Http ¶ added in v0.1.18
type BackendSpec_Http struct {
Http *HttpBackendConfig `protobuf:"bytes,2,opt,name=http,proto3,oneof"`
}
type BackendSpec_S3 ¶ added in v0.1.18
type BackendSpec_S3 struct {
S3 *S3BackendConfig `protobuf:"bytes,3,opt,name=s3,proto3,oneof"`
}
type BlockDiskConfig ¶ added in v0.1.18
type BlockDiskConfig struct {
// Optional NUMA node hint used when placing storage work for this block device.
Numa *uint32 `protobuf:"varint,1,opt,name=numa,proto3,oneof" json:"numa,omitempty"`
// Block device path; paths must be unique across all disks.
Path string `protobuf:"bytes,2,opt,name=path,proto3" json:"path,omitempty"`
// contains filtered or unexported fields
}
func (*BlockDiskConfig) Descriptor
deprecated
added in
v0.1.18
func (*BlockDiskConfig) Descriptor() ([]byte, []int)
Deprecated: Use BlockDiskConfig.ProtoReflect.Descriptor instead.
func (*BlockDiskConfig) GetNuma ¶ added in v0.1.18
func (x *BlockDiskConfig) GetNuma() uint32
func (*BlockDiskConfig) GetPath ¶ added in v0.1.18
func (x *BlockDiskConfig) GetPath() string
func (*BlockDiskConfig) ProtoMessage ¶ added in v0.1.18
func (*BlockDiskConfig) ProtoMessage()
func (*BlockDiskConfig) ProtoReflect ¶ added in v0.1.18
func (x *BlockDiskConfig) ProtoReflect() protoreflect.Message
func (*BlockDiskConfig) Reset ¶ added in v0.1.18
func (x *BlockDiskConfig) Reset()
func (*BlockDiskConfig) String ¶ added in v0.1.18
func (x *BlockDiskConfig) String() string
type CacheSpec ¶ added in v0.1.18
type CacheSpec struct {
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Backend source used for miss fills. Cache name is the only logical keyspace prefix.
Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
// contains filtered or unexported fields
}
func (*CacheSpec) Descriptor
deprecated
added in
v0.1.18
func (*CacheSpec) ProtoMessage ¶ added in v0.1.18
func (*CacheSpec) ProtoMessage()
func (*CacheSpec) ProtoReflect ¶ added in v0.1.18
func (x *CacheSpec) ProtoReflect() protoreflect.Message
type Config ¶
type Config struct {
// Operator-assigned opaque version tracked so operators can confirm which config has been applied. 0 means unversioned.
Version uint64 `protobuf:"varint,1,opt,name=version,proto3" json:"version,omitempty"`
// Startup options are only read once during initialization.
Startup *StartupCfg `protobuf:"bytes,2,opt,name=startup,proto3" json:"startup,omitempty"`
Frontends []*FrontendSpec `protobuf:"bytes,3,rep,name=frontends,proto3" json:"frontends,omitempty"`
Backends []*BackendSpec `protobuf:"bytes,4,rep,name=backends,proto3" json:"backends,omitempty"`
Caches []*CacheSpec `protobuf:"bytes,5,rep,name=caches,proto3" json:"caches,omitempty"`
Disks []*DiskSpec `protobuf:"bytes,6,rep,name=disks,proto3" json:"disks,omitempty"`
// Number of deterministic finger-table entries to derive per peer. Defaults to 100 when unset.
FingersPerNode *uint32 `protobuf:"varint,7,opt,name=fingers_per_node,json=fingersPerNode,proto3,oneof" json:"fingers_per_node,omitempty"`
// Name of this process in the `peers` roster. Required when peers or a
// routing plan are configured. The internal ring and fabric ids are derived
// from this peer name and are startup-fixed.
Self string `protobuf:"bytes,8,opt,name=self,proto3" json:"self,omitempty"`
// Precomputed routing table for this process. When set, `peers` can be
// sparse, containing only this process's routing neighbors.
RoutingPlan *RoutingPlan `protobuf:"bytes,9,opt,name=routing_plan,json=routingPlan,proto3,oneof" json:"routing_plan,omitempty"`
// Process-wide peer definitions for the globally shared transport mesh.
Peers []*PeerSpec `protobuf:"bytes,10,rep,name=peers,proto3" json:"peers,omitempty"`
// Optional topology weighting for automatic finger selection. When unset,
// automatic routing uses the historical hard-locality preference. When set,
// finger selection uses weighted rendezvous while successor/predecessor
// selection remains purely ring-nearest for routing correctness.
TopologyWeighting *TopologyWeighting `protobuf:"bytes,11,opt,name=topology_weighting,json=topologyWeighting,proto3,oneof" json:"topology_weighting,omitempty"`
// contains filtered or unexported fields
}
func (*Config) Descriptor
deprecated
func (*Config) GetBackends ¶
func (x *Config) GetBackends() []*BackendSpec
func (*Config) GetFingersPerNode ¶
func (*Config) GetFrontends ¶
func (x *Config) GetFrontends() []*FrontendSpec
func (*Config) GetRoutingPlan ¶
func (x *Config) GetRoutingPlan() *RoutingPlan
func (*Config) GetStartup ¶
func (x *Config) GetStartup() *StartupCfg
func (*Config) GetTopologyWeighting ¶
func (x *Config) GetTopologyWeighting() *TopologyWeighting
func (*Config) GetVersion ¶
func (*Config) ProtoMessage ¶
func (*Config) ProtoMessage()
func (*Config) ProtoReflect ¶
func (x *Config) ProtoReflect() protoreflect.Message
type DiskSpec ¶
type DiskSpec struct {
// Optional io_uring queue depth override for this disk.
QueueDepth *uint32 `protobuf:"varint,1,opt,name=queue_depth,json=queueDepth,proto3,oneof" json:"queue_depth,omitempty"`
// Optional cache page size override in bytes; defaults to the storage engine page size.
PageSizeBytes *uint64 `protobuf:"varint,2,opt,name=page_size_bytes,json=pageSizeBytes,proto3,oneof" json:"page_size_bytes,omitempty"`
// Skips the recovery scan when no metadata page is valid; intended only for fresh or benchmark disks.
SkipRecoveryScan bool `protobuf:"varint,3,opt,name=skip_recovery_scan,json=skipRecoveryScan,proto3" json:"skip_recovery_scan,omitempty"`
// Destructively resets the cache index on open, ignoring any existing on-disk metadata.
// Intended only for benchmark cache devices that are safe to reformat between runs.
ForceFormat bool `protobuf:"varint,4,opt,name=force_format,json=forceFormat,proto3" json:"force_format,omitempty"`
// Admit every write into the cache index instead of requiring the default
// second touch. Intended for benchmark warmups that must prefill NVMe devices
// with a cold synthetic keyspace.
BypassAdmission bool `protobuf:"varint,5,opt,name=bypass_admission,json=bypassAdmission,proto3" json:"bypass_admission,omitempty"`
// Serve reads from the committed in-memory index mirror instead of reading
// the terminal btree leaf from disk. Intended only for benchmark devices
// where recovery/corruption validation has been deliberately traded for
// measuring the data-page path.
BypassIndexRead bool `protobuf:"varint,6,opt,name=bypass_index_read,json=bypassIndexRead,proto3" json:"bypass_index_read,omitempty"`
// Skip data checksum validation on reads. Intended only for benchmark
// devices where cache contents were just populated by the same daemon and
// the target is measuring the NVMe data path rather than CPU checksum cost.
BypassChecksum bool `protobuf:"varint,7,opt,name=bypass_checksum,json=bypassChecksum,proto3" json:"bypass_checksum,omitempty"`
// Disables the in-memory bufferpool page cache for pages routed to this disk.
DisablePageCache bool `protobuf:"varint,10,opt,name=disable_page_cache,json=disablePageCache,proto3" json:"disable_page_cache,omitempty"`
// Types that are valid to be assigned to Config:
//
// *DiskSpec_Block
// *DiskSpec_File
Config isDiskSpec_Config `protobuf_oneof:"config"`
// contains filtered or unexported fields
}
func (*DiskSpec) Descriptor
deprecated
func (*DiskSpec) GetBlock ¶ added in v0.1.18
func (x *DiskSpec) GetBlock() *BlockDiskConfig
func (*DiskSpec) GetBypassAdmission ¶
func (*DiskSpec) GetBypassChecksum ¶
func (*DiskSpec) GetBypassIndexRead ¶
func (*DiskSpec) GetDisablePageCache ¶
func (*DiskSpec) GetFile ¶ added in v0.1.18
func (x *DiskSpec) GetFile() *FileDiskConfig
func (*DiskSpec) GetForceFormat ¶
func (*DiskSpec) GetPageSizeBytes ¶
func (*DiskSpec) GetQueueDepth ¶
func (*DiskSpec) GetSkipRecoveryScan ¶ added in v0.1.18
func (*DiskSpec) ProtoMessage ¶
func (*DiskSpec) ProtoMessage()
func (*DiskSpec) ProtoReflect ¶
func (x *DiskSpec) ProtoReflect() protoreflect.Message
type DiskSpec_Block ¶ added in v0.1.18
type DiskSpec_Block struct {
Block *BlockDiskConfig `protobuf:"bytes,8,opt,name=block,proto3,oneof"`
}
type DiskSpec_File ¶ added in v0.1.18
type DiskSpec_File struct {
File *FileDiskConfig `protobuf:"bytes,9,opt,name=file,proto3,oneof"`
}
type FabricCfg ¶
type FabricCfg struct {
// Types that are valid to be assigned to Binds:
//
// *FabricCfg_Tcp
// *FabricCfg_Rdma
// *FabricCfg_AutoRdma
Binds isFabricCfg_Binds `protobuf_oneof:"binds"`
// Maximum in-flight fabric operations per shard. Defaults to 1024 when unset.
MaxInflight *uint32 `protobuf:"varint,4,opt,name=max_inflight,json=maxInflight,proto3,oneof" json:"max_inflight,omitempty"`
// libfabric progress threads per shard. Defaults to 2 when unset.
ProgressThreads *uint32 `protobuf:"varint,5,opt,name=progress_threads,json=progressThreads,proto3,oneof" json:"progress_threads,omitempty"`
// Fabric RPC worker threads per shard. Defaults to 4 when unset.
RpcWorkerThreads *uint32 `protobuf:"varint,6,opt,name=rpc_worker_threads,json=rpcWorkerThreads,proto3,oneof" json:"rpc_worker_threads,omitempty"`
// Progress-thread busy-poll budget in microseconds. Defaults to 10 when unset.
ProgressPollUs *uint32 `protobuf:"varint,7,opt,name=progress_poll_us,json=progressPollUs,proto3,oneof" json:"progress_poll_us,omitempty"`
// contains filtered or unexported fields
}
func (*FabricCfg) Descriptor
deprecated
func (*FabricCfg) GetAutoRdma ¶ added in v0.1.18
func (x *FabricCfg) GetAutoRdma() *AutoRdmaFabricBinds
func (*FabricCfg) GetMaxInflight ¶
func (*FabricCfg) GetProgressPollUs ¶
func (*FabricCfg) GetProgressThreads ¶
func (*FabricCfg) GetRdma ¶ added in v0.1.18
func (x *FabricCfg) GetRdma() *RdmaFabricBinds
func (*FabricCfg) GetRpcWorkerThreads ¶
func (*FabricCfg) GetTcp ¶ added in v0.1.18
func (x *FabricCfg) GetTcp() *TcpFabricBinds
func (*FabricCfg) ProtoMessage ¶
func (*FabricCfg) ProtoMessage()
func (*FabricCfg) ProtoReflect ¶
func (x *FabricCfg) ProtoReflect() protoreflect.Message
type FabricCfg_AutoRdma ¶ added in v0.1.18
type FabricCfg_AutoRdma struct {
AutoRdma *AutoRdmaFabricBinds `protobuf:"bytes,3,opt,name=auto_rdma,json=autoRdma,proto3,oneof"`
}
type FabricCfg_Rdma ¶ added in v0.1.18
type FabricCfg_Rdma struct {
Rdma *RdmaFabricBinds `protobuf:"bytes,2,opt,name=rdma,proto3,oneof"`
}
type FabricCfg_Tcp ¶ added in v0.1.18
type FabricCfg_Tcp struct {
Tcp *TcpFabricBinds `protobuf:"bytes,1,opt,name=tcp,proto3,oneof"`
}
type FakeBackendConfig ¶ added in v0.1.18
type FakeBackendConfig struct {
// Stripe granularity in bytes for synthetic origin references. Defaults to 4 MiB when unset.
// Must be a power of two.
StripeSizeBytes *uint64 `protobuf:"varint,1,opt,name=stripe_size_bytes,json=stripeSizeBytes,proto3,oneof" json:"stripe_size_bytes,omitempty"`
// Size of each deterministic synthetic object in bytes. Defaults to 1 MiB when unset.
ObjectSizeBytes *uint64 `protobuf:"varint,2,opt,name=object_size_bytes,json=objectSizeBytes,proto3,oneof" json:"object_size_bytes,omitempty"`
// contains filtered or unexported fields
}
func (*FakeBackendConfig) Descriptor
deprecated
added in
v0.1.18
func (*FakeBackendConfig) Descriptor() ([]byte, []int)
Deprecated: Use FakeBackendConfig.ProtoReflect.Descriptor instead.
func (*FakeBackendConfig) GetObjectSizeBytes ¶ added in v0.1.18
func (x *FakeBackendConfig) GetObjectSizeBytes() uint64
func (*FakeBackendConfig) GetStripeSizeBytes ¶ added in v0.1.18
func (x *FakeBackendConfig) GetStripeSizeBytes() uint64
func (*FakeBackendConfig) ProtoMessage ¶ added in v0.1.18
func (*FakeBackendConfig) ProtoMessage()
func (*FakeBackendConfig) ProtoReflect ¶ added in v0.1.18
func (x *FakeBackendConfig) ProtoReflect() protoreflect.Message
func (*FakeBackendConfig) Reset ¶ added in v0.1.18
func (x *FakeBackendConfig) Reset()
func (*FakeBackendConfig) String ¶ added in v0.1.18
func (x *FakeBackendConfig) String() string
type FileDiskConfig ¶ added in v0.1.18
type FileDiskConfig struct {
// Required file-backed disk capacity in bytes; the file is provisioned to this size before opening.
Size *uint64 `protobuf:"varint,1,opt,name=size,proto3,oneof" json:"size,omitempty"`
// Backing-file path; paths must be unique across all disks.
Path string `protobuf:"bytes,2,opt,name=path,proto3" json:"path,omitempty"`
// contains filtered or unexported fields
}
func (*FileDiskConfig) Descriptor
deprecated
added in
v0.1.18
func (*FileDiskConfig) Descriptor() ([]byte, []int)
Deprecated: Use FileDiskConfig.ProtoReflect.Descriptor instead.
func (*FileDiskConfig) GetPath ¶ added in v0.1.18
func (x *FileDiskConfig) GetPath() string
func (*FileDiskConfig) GetSize ¶ added in v0.1.18
func (x *FileDiskConfig) GetSize() uint64
func (*FileDiskConfig) ProtoMessage ¶ added in v0.1.18
func (*FileDiskConfig) ProtoMessage()
func (*FileDiskConfig) ProtoReflect ¶ added in v0.1.18
func (x *FileDiskConfig) ProtoReflect() protoreflect.Message
func (*FileDiskConfig) Reset ¶ added in v0.1.18
func (x *FileDiskConfig) Reset()
func (*FileDiskConfig) String ¶ added in v0.1.18
func (x *FileDiskConfig) String() string
type FrontendSpec ¶
type FrontendSpec struct {
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
Source string `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
// Types that are valid to be assigned to Config:
//
// *FrontendSpec_Http
// *FrontendSpec_S3
// *FrontendSpec_Loadgen
Config isFrontendSpec_Config `protobuf_oneof:"config"`
// contains filtered or unexported fields
}
func (*FrontendSpec) Descriptor
deprecated
func (*FrontendSpec) Descriptor() ([]byte, []int)
Deprecated: Use FrontendSpec.ProtoReflect.Descriptor instead.
func (*FrontendSpec) GetConfig ¶ added in v0.1.18
func (x *FrontendSpec) GetConfig() isFrontendSpec_Config
func (*FrontendSpec) GetHttp ¶ added in v0.1.18
func (x *FrontendSpec) GetHttp() *HttpFrontendConfig
func (*FrontendSpec) GetLoadgen ¶ added in v0.1.18
func (x *FrontendSpec) GetLoadgen() *LoadgenFrontendConfig
func (*FrontendSpec) GetName ¶ added in v0.1.18
func (x *FrontendSpec) GetName() string
func (*FrontendSpec) GetS3 ¶ added in v0.1.18
func (x *FrontendSpec) GetS3() *S3FrontendConfig
func (*FrontendSpec) GetSource ¶ added in v0.1.18
func (x *FrontendSpec) GetSource() string
func (*FrontendSpec) ProtoMessage ¶
func (*FrontendSpec) ProtoMessage()
func (*FrontendSpec) ProtoReflect ¶
func (x *FrontendSpec) ProtoReflect() protoreflect.Message
func (*FrontendSpec) Reset ¶
func (x *FrontendSpec) Reset()
func (*FrontendSpec) String ¶
func (x *FrontendSpec) String() string
type FrontendSpec_Http ¶ added in v0.1.18
type FrontendSpec_Http struct {
Http *HttpFrontendConfig `protobuf:"bytes,3,opt,name=http,proto3,oneof"`
}
type FrontendSpec_Loadgen ¶ added in v0.1.18
type FrontendSpec_Loadgen struct {
Loadgen *LoadgenFrontendConfig `protobuf:"bytes,5,opt,name=loadgen,proto3,oneof"`
}
type FrontendSpec_S3 ¶ added in v0.1.18
type FrontendSpec_S3 struct {
S3 *S3FrontendConfig `protobuf:"bytes,4,opt,name=s3,proto3,oneof"`
}
type HttpBackendConfig ¶ added in v0.1.18
type HttpBackendConfig struct {
// Origin URL resolved to an IPv4 address for HTTP/1.1 fetches. `http://` uses plaintext;
// `https://` uses TLS with kTLS receive offload.
Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url,omitempty"`
// Stripe granularity in bytes for origin references. Defaults to 4 MiB when unset.
// Must be a power of two.
StripeSizeBytes *uint64 `protobuf:"varint,2,opt,name=stripe_size_bytes,json=stripeSizeBytes,proto3,oneof" json:"stripe_size_bytes,omitempty"`
// Maximum concurrent origin HTTP fetches. Defaults to 64 when unset.
HttpConcurrency *uint32 `protobuf:"varint,3,opt,name=http_concurrency,json=httpConcurrency,proto3,oneof" json:"http_concurrency,omitempty"`
// Optional CA certificate bundle/path used for TLS verification on `https://` origins.
CaCertPath *string `protobuf:"bytes,4,opt,name=ca_cert_path,json=caCertPath,proto3,oneof" json:"ca_cert_path,omitempty"`
// Skips TLS certificate verification on `https://` origins. Mutually exclusive with ca_cert_path.
InsecureSkipVerify bool `protobuf:"varint,5,opt,name=insecure_skip_verify,json=insecureSkipVerify,proto3" json:"insecure_skip_verify,omitempty"`
// Optional PEM client certificate presented for TLS client authentication on `https://` origins.
// Must be set together with client_key_path.
ClientCertPath *string `protobuf:"bytes,6,opt,name=client_cert_path,json=clientCertPath,proto3,oneof" json:"client_cert_path,omitempty"`
// Optional PEM private key for client_cert_path. Must be set together with client_cert_path.
ClientKeyPath *string `protobuf:"bytes,7,opt,name=client_key_path,json=clientKeyPath,proto3,oneof" json:"client_key_path,omitempty"`
// contains filtered or unexported fields
}
func (*HttpBackendConfig) Descriptor
deprecated
added in
v0.1.18
func (*HttpBackendConfig) Descriptor() ([]byte, []int)
Deprecated: Use HttpBackendConfig.ProtoReflect.Descriptor instead.
func (*HttpBackendConfig) GetCaCertPath ¶ added in v0.1.19
func (x *HttpBackendConfig) GetCaCertPath() string
func (*HttpBackendConfig) GetClientCertPath ¶
func (x *HttpBackendConfig) GetClientCertPath() string
func (*HttpBackendConfig) GetClientKeyPath ¶
func (x *HttpBackendConfig) GetClientKeyPath() string
func (*HttpBackendConfig) GetHttpConcurrency ¶ added in v0.1.18
func (x *HttpBackendConfig) GetHttpConcurrency() uint32
func (*HttpBackendConfig) GetInsecureSkipVerify ¶ added in v0.1.19
func (x *HttpBackendConfig) GetInsecureSkipVerify() bool
func (*HttpBackendConfig) GetStripeSizeBytes ¶ added in v0.1.18
func (x *HttpBackendConfig) GetStripeSizeBytes() uint64
func (*HttpBackendConfig) GetUrl ¶ added in v0.1.18
func (x *HttpBackendConfig) GetUrl() string
func (*HttpBackendConfig) ProtoMessage ¶ added in v0.1.18
func (*HttpBackendConfig) ProtoMessage()
func (*HttpBackendConfig) ProtoReflect ¶ added in v0.1.18
func (x *HttpBackendConfig) ProtoReflect() protoreflect.Message
func (*HttpBackendConfig) Reset ¶ added in v0.1.18
func (x *HttpBackendConfig) Reset()
func (*HttpBackendConfig) String ¶ added in v0.1.18
func (x *HttpBackendConfig) String() string
type HttpFrontendConfig ¶ added in v0.1.18
type HttpFrontendConfig struct {
// Socket address for HTTP listeners; each serving shard binds it with SO_REUSEPORT.
Addr string `protobuf:"bytes,1,opt,name=addr,proto3" json:"addr,omitempty"`
// Maximum requests served on one client connection. Defaults to 1024 when unset.
MaxRequestsPerConnection *uint32 `` /* 144-byte string literal not displayed */
// contains filtered or unexported fields
}
func (*HttpFrontendConfig) Descriptor
deprecated
added in
v0.1.18
func (*HttpFrontendConfig) Descriptor() ([]byte, []int)
Deprecated: Use HttpFrontendConfig.ProtoReflect.Descriptor instead.
func (*HttpFrontendConfig) GetAddr ¶ added in v0.1.18
func (x *HttpFrontendConfig) GetAddr() string
func (*HttpFrontendConfig) GetMaxRequestsPerConnection ¶ added in v0.1.19
func (x *HttpFrontendConfig) GetMaxRequestsPerConnection() uint32
func (*HttpFrontendConfig) ProtoMessage ¶ added in v0.1.18
func (*HttpFrontendConfig) ProtoMessage()
func (*HttpFrontendConfig) ProtoReflect ¶ added in v0.1.18
func (x *HttpFrontendConfig) ProtoReflect() protoreflect.Message
func (*HttpFrontendConfig) Reset ¶ added in v0.1.18
func (x *HttpFrontendConfig) Reset()
func (*HttpFrontendConfig) String ¶ added in v0.1.18
func (x *HttpFrontendConfig) String() string
type LoadgenFrontendConfig ¶ added in v0.1.18
type LoadgenFrontendConfig struct {
// Synthetic read workers per serving shard. Defaults to 1 when unset.
Workers *uint32 `protobuf:"varint,1,opt,name=workers,proto3,oneof" json:"workers,omitempty"`
// Deterministic synthetic keyspace and request stream seed.
Seed *uint64 `protobuf:"varint,2,opt,name=seed,proto3,oneof" json:"seed,omitempty"`
// Number of distinct synthetic object ids to sample. Defaults to 1,000,000 when unset.
KeyspaceObjects *uint64 `protobuf:"varint,3,opt,name=keyspace_objects,json=keyspaceObjects,proto3,oneof" json:"keyspace_objects,omitempty"`
// Bytes to read from the start of each object. When unset or zero, reads the full resolved object length.
ReadBytes *uint64 `protobuf:"varint,4,opt,name=read_bytes,json=readBytes,proto3,oneof" json:"read_bytes,omitempty"`
// Verify returned metadata and body bytes against the deterministic synthetic dataset.
Verify bool `protobuf:"varint,5,opt,name=verify,proto3" json:"verify,omitempty"`
// Optional expected synthetic object size. When set with verify=true, rejects mismatched metadata.
ObjectSizeBytes *uint64 `protobuf:"varint,6,opt,name=object_size_bytes,json=objectSizeBytes,proto3,oneof" json:"object_size_bytes,omitempty"`
// Zipf exponent for synthetic object rank sampling. Defaults to 1.1 when unset.
ZipfExponent *float64 `protobuf:"fixed64,7,opt,name=zipf_exponent,json=zipfExponent,proto3,oneof" json:"zipf_exponent,omitempty"`
// When true, workers keep sampling until the first requested stripe routes to
// a peer instead of local ownership. This is intended for fabric saturation
// benchmarks; the request still uses the normal cache/p2p/storage/origin path.
RemoteOnly bool `protobuf:"varint,8,opt,name=remote_only,json=remoteOnly,proto3" json:"remote_only,omitempty"`
// When true, loadgen stamps requests so peer handlers synthesize zero-filled
// response pages directly from their RPC scratch buffers. This bypasses disk
// and origin work while keeping normal peer routing, fabric RPC framing, and
// RDMA writes in the benchmark path.
FabricOnly bool `protobuf:"varint,9,opt,name=fabric_only,json=fabricOnly,proto3" json:"fabric_only,omitempty"`
// When true, workers keep sampling until the first requested stripe is owned
// by the local node. This is intended for benchmark warmup phases that prefill
// each node's own NVMe-backed cache before a remote-only measurement phase.
LocalOnly bool `protobuf:"varint,10,opt,name=local_only,json=localOnly,proto3" json:"local_only,omitempty"`
// When true, the initiating bufferpool skips local disk lookup and writeback.
// Peer handlers still use their local NVMe-backed cache, so this keeps the
// measured path focused on remote NVMe + RDMA instead of requester-side reuse.
SkipLocalDisk bool `protobuf:"varint,11,opt,name=skip_local_disk,json=skipLocalDisk,proto3" json:"skip_local_disk,omitempty"`
// contains filtered or unexported fields
}
func (*LoadgenFrontendConfig) Descriptor
deprecated
added in
v0.1.18
func (*LoadgenFrontendConfig) Descriptor() ([]byte, []int)
Deprecated: Use LoadgenFrontendConfig.ProtoReflect.Descriptor instead.
func (*LoadgenFrontendConfig) GetFabricOnly ¶
func (x *LoadgenFrontendConfig) GetFabricOnly() bool
func (*LoadgenFrontendConfig) GetKeyspaceObjects ¶
func (x *LoadgenFrontendConfig) GetKeyspaceObjects() uint64
func (*LoadgenFrontendConfig) GetLocalOnly ¶
func (x *LoadgenFrontendConfig) GetLocalOnly() bool
func (*LoadgenFrontendConfig) GetObjectSizeBytes ¶
func (x *LoadgenFrontendConfig) GetObjectSizeBytes() uint64
func (*LoadgenFrontendConfig) GetReadBytes ¶ added in v0.1.18
func (x *LoadgenFrontendConfig) GetReadBytes() uint64
func (*LoadgenFrontendConfig) GetRemoteOnly ¶
func (x *LoadgenFrontendConfig) GetRemoteOnly() bool
func (*LoadgenFrontendConfig) GetSeed ¶ added in v0.1.18
func (x *LoadgenFrontendConfig) GetSeed() uint64
func (*LoadgenFrontendConfig) GetSkipLocalDisk ¶
func (x *LoadgenFrontendConfig) GetSkipLocalDisk() bool
func (*LoadgenFrontendConfig) GetVerify ¶ added in v0.1.18
func (x *LoadgenFrontendConfig) GetVerify() bool
func (*LoadgenFrontendConfig) GetWorkers ¶ added in v0.1.18
func (x *LoadgenFrontendConfig) GetWorkers() uint32
func (*LoadgenFrontendConfig) GetZipfExponent ¶
func (x *LoadgenFrontendConfig) GetZipfExponent() float64
func (*LoadgenFrontendConfig) ProtoMessage ¶ added in v0.1.18
func (*LoadgenFrontendConfig) ProtoMessage()
func (*LoadgenFrontendConfig) ProtoReflect ¶ added in v0.1.18
func (x *LoadgenFrontendConfig) ProtoReflect() protoreflect.Message
func (*LoadgenFrontendConfig) Reset ¶ added in v0.1.18
func (x *LoadgenFrontendConfig) Reset()
func (*LoadgenFrontendConfig) String ¶ added in v0.1.18
func (x *LoadgenFrontendConfig) String() string
type MemoryCfg ¶
type MemoryCfg struct {
// Allocates per-shard backing from the heap instead of 2 MiB hugepages.
NoHugepages bool `protobuf:"varint,1,opt,name=no_hugepages,json=noHugepages,proto3" json:"no_hugepages,omitempty"`
// Total backing pool across serving shards, in bytes. Defaults to 128 MiB when unset.
MemoryTotalBytes *uint64 `protobuf:"varint,2,opt,name=memory_total_bytes,json=memoryTotalBytes,proto3,oneof" json:"memory_total_bytes,omitempty"`
// contains filtered or unexported fields
}
func (*MemoryCfg) Descriptor
deprecated
func (*MemoryCfg) GetMemoryTotalBytes ¶
func (*MemoryCfg) GetNoHugepages ¶
func (*MemoryCfg) ProtoMessage ¶
func (*MemoryCfg) ProtoMessage()
func (*MemoryCfg) ProtoReflect ¶
func (x *MemoryCfg) ProtoReflect() protoreflect.Message
type MetricsCfg ¶
type MetricsCfg struct {
// Prometheus metrics listen address, such as "0.0.0.0:9100". Empty disables the exporter.
Addr string `protobuf:"bytes,1,opt,name=addr,proto3" json:"addr,omitempty"`
// contains filtered or unexported fields
}
func (*MetricsCfg) Descriptor
deprecated
func (*MetricsCfg) Descriptor() ([]byte, []int)
Deprecated: Use MetricsCfg.ProtoReflect.Descriptor instead.
func (*MetricsCfg) GetAddr ¶ added in v0.1.18
func (x *MetricsCfg) GetAddr() string
func (*MetricsCfg) ProtoMessage ¶
func (*MetricsCfg) ProtoMessage()
func (*MetricsCfg) ProtoReflect ¶
func (x *MetricsCfg) ProtoReflect() protoreflect.Message
func (*MetricsCfg) Reset ¶
func (x *MetricsCfg) Reset()
func (*MetricsCfg) String ¶
func (x *MetricsCfg) String() string
type PeerSpec ¶
type PeerSpec struct {
// Stable peer name. The process-wide fabric peer id, ring position, and route
// references are derived from this name.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Peer tags used by placement-aware planning.
Tags []string `protobuf:"bytes,2,rep,name=tags,proto3" json:"tags,omitempty"`
// Types that are valid to be assigned to Config:
//
// *PeerSpec_Tcp
// *PeerSpec_Rdma
Config isPeerSpec_Config `protobuf_oneof:"config"`
// contains filtered or unexported fields
}
func (*PeerSpec) Descriptor
deprecated
func (*PeerSpec) GetRdma ¶ added in v0.1.18
func (x *PeerSpec) GetRdma() *RdmaPeerConfig
func (*PeerSpec) GetTcp ¶ added in v0.1.18
func (x *PeerSpec) GetTcp() *TcpPeerConfig
func (*PeerSpec) ProtoMessage ¶
func (*PeerSpec) ProtoMessage()
func (*PeerSpec) ProtoReflect ¶
func (x *PeerSpec) ProtoReflect() protoreflect.Message
type PeerSpec_Rdma ¶ added in v0.1.18
type PeerSpec_Rdma struct {
Rdma *RdmaPeerConfig `protobuf:"bytes,4,opt,name=rdma,proto3,oneof"`
}
type PeerSpec_Tcp ¶ added in v0.1.18
type PeerSpec_Tcp struct {
Tcp *TcpPeerConfig `protobuf:"bytes,3,opt,name=tcp,proto3,oneof"`
}
type RdmaFabricBind ¶ added in v0.1.18
type RdmaFabricBind struct {
// Provider-native RDMA fabric address encoded as "hex:<fi_getname-bytes>".
Addr string `protobuf:"bytes,1,opt,name=addr,proto3" json:"addr,omitempty"`
// contains filtered or unexported fields
}
func (*RdmaFabricBind) Descriptor
deprecated
added in
v0.1.18
func (*RdmaFabricBind) Descriptor() ([]byte, []int)
Deprecated: Use RdmaFabricBind.ProtoReflect.Descriptor instead.
func (*RdmaFabricBind) GetAddr ¶ added in v0.1.18
func (x *RdmaFabricBind) GetAddr() string
func (*RdmaFabricBind) ProtoMessage ¶ added in v0.1.18
func (*RdmaFabricBind) ProtoMessage()
func (*RdmaFabricBind) ProtoReflect ¶ added in v0.1.18
func (x *RdmaFabricBind) ProtoReflect() protoreflect.Message
func (*RdmaFabricBind) Reset ¶ added in v0.1.18
func (x *RdmaFabricBind) Reset()
func (*RdmaFabricBind) String ¶ added in v0.1.18
func (x *RdmaFabricBind) String() string
type RdmaFabricBinds ¶ added in v0.1.18
type RdmaFabricBinds struct {
Binds []*RdmaFabricBind `protobuf:"bytes,1,rep,name=binds,proto3" json:"binds,omitempty"`
// contains filtered or unexported fields
}
func (*RdmaFabricBinds) Descriptor
deprecated
added in
v0.1.18
func (*RdmaFabricBinds) Descriptor() ([]byte, []int)
Deprecated: Use RdmaFabricBinds.ProtoReflect.Descriptor instead.
func (*RdmaFabricBinds) GetBinds ¶ added in v0.1.18
func (x *RdmaFabricBinds) GetBinds() []*RdmaFabricBind
func (*RdmaFabricBinds) ProtoMessage ¶ added in v0.1.18
func (*RdmaFabricBinds) ProtoMessage()
func (*RdmaFabricBinds) ProtoReflect ¶ added in v0.1.18
func (x *RdmaFabricBinds) ProtoReflect() protoreflect.Message
func (*RdmaFabricBinds) Reset ¶ added in v0.1.18
func (x *RdmaFabricBinds) Reset()
func (*RdmaFabricBinds) String ¶ added in v0.1.18
func (x *RdmaFabricBinds) String() string
type RdmaPeerConfig ¶ added in v0.1.18
type RdmaPeerConfig struct {
// Default RDMA fabric address. Provider-native addresses are encoded as
// "hex:<fi_getname-bytes>"; RDMA-CM socket addresses are accepted when the
// provider reports them.
Addr string `protobuf:"bytes,1,opt,name=addr,proto3" json:"addr,omitempty"`
// Ordered RDMA fabric addresses for peers that expose multiple fabric units,
// such as one endpoint per HCA. The daemon dials the address whose index
// matches the local fabric unit index, falling back to addr when absent.
Addrs []string `protobuf:"bytes,2,rep,name=addrs,proto3" json:"addrs,omitempty"`
// contains filtered or unexported fields
}
func (*RdmaPeerConfig) Descriptor
deprecated
added in
v0.1.18
func (*RdmaPeerConfig) Descriptor() ([]byte, []int)
Deprecated: Use RdmaPeerConfig.ProtoReflect.Descriptor instead.
func (*RdmaPeerConfig) GetAddr ¶ added in v0.1.18
func (x *RdmaPeerConfig) GetAddr() string
func (*RdmaPeerConfig) GetAddrs ¶
func (x *RdmaPeerConfig) GetAddrs() []string
func (*RdmaPeerConfig) ProtoMessage ¶ added in v0.1.18
func (*RdmaPeerConfig) ProtoMessage()
func (*RdmaPeerConfig) ProtoReflect ¶ added in v0.1.18
func (x *RdmaPeerConfig) ProtoReflect() protoreflect.Message
func (*RdmaPeerConfig) Reset ¶ added in v0.1.18
func (x *RdmaPeerConfig) Reset()
func (*RdmaPeerConfig) String ¶ added in v0.1.18
func (x *RdmaPeerConfig) String() string
type RoutingPlan ¶
type RoutingPlan struct {
// Peer names selected for this routing plan.
Fingers []string `protobuf:"bytes,1,rep,name=fingers,proto3" json:"fingers,omitempty"`
// Peer name of the nearest-forward neighbor on the ring.
Successor *string `protobuf:"bytes,2,opt,name=successor,proto3,oneof" json:"successor,omitempty"`
// Peer name of the nearest-backward neighbor on the ring.
Predecessor *string `protobuf:"bytes,3,opt,name=predecessor,proto3,oneof" json:"predecessor,omitempty"`
// contains filtered or unexported fields
}
A precomputed routing table for a single node, produced by a global-view planner. All names reference `PeerSpec.name` values in the `peers` list (each must be present so a fabric connection exists). Ring positions are derived from names, and tags do not affect runtime routing, so only names are carried here.
func (*RoutingPlan) Descriptor
deprecated
func (*RoutingPlan) Descriptor() ([]byte, []int)
Deprecated: Use RoutingPlan.ProtoReflect.Descriptor instead.
func (*RoutingPlan) GetFingers ¶
func (x *RoutingPlan) GetFingers() []string
func (*RoutingPlan) GetPredecessor ¶
func (x *RoutingPlan) GetPredecessor() string
func (*RoutingPlan) GetSuccessor ¶
func (x *RoutingPlan) GetSuccessor() string
func (*RoutingPlan) ProtoMessage ¶
func (*RoutingPlan) ProtoMessage()
func (*RoutingPlan) ProtoReflect ¶
func (x *RoutingPlan) ProtoReflect() protoreflect.Message
func (*RoutingPlan) Reset ¶
func (x *RoutingPlan) Reset()
func (*RoutingPlan) String ¶
func (x *RoutingPlan) String() string
type S3BackendConfig ¶ added in v0.1.18
type S3BackendConfig struct {
// S3-compatible origin URL resolved to an IPv4 address for HTTP/1.1 fetches. `http://` uses
// plaintext; `https://` uses TLS with kTLS receive offload.
Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url,omitempty"`
// Stripe granularity in bytes for origin references. Defaults to 4 MiB when unset.
// Must be a power of two.
StripeSizeBytes *uint64 `protobuf:"varint,2,opt,name=stripe_size_bytes,json=stripeSizeBytes,proto3,oneof" json:"stripe_size_bytes,omitempty"`
// Maximum concurrent origin HTTP fetches. Defaults to 64 when unset.
HttpConcurrency *uint32 `protobuf:"varint,3,opt,name=http_concurrency,json=httpConcurrency,proto3,oneof" json:"http_concurrency,omitempty"`
// Optional CA certificate bundle/path used for TLS verification on `https://` origins.
CaCertPath *string `protobuf:"bytes,4,opt,name=ca_cert_path,json=caCertPath,proto3,oneof" json:"ca_cert_path,omitempty"`
// Skips TLS certificate verification on `https://` origins. Mutually exclusive with ca_cert_path.
InsecureSkipVerify bool `protobuf:"varint,5,opt,name=insecure_skip_verify,json=insecureSkipVerify,proto3" json:"insecure_skip_verify,omitempty"`
// Optional PEM client certificate presented for TLS client authentication on `https://` origins.
// Must be set together with client_key_path.
ClientCertPath *string `protobuf:"bytes,6,opt,name=client_cert_path,json=clientCertPath,proto3,oneof" json:"client_cert_path,omitempty"`
// Optional PEM private key for client_cert_path. Must be set together with client_cert_path.
ClientKeyPath *string `protobuf:"bytes,7,opt,name=client_key_path,json=clientKeyPath,proto3,oneof" json:"client_key_path,omitempty"`
// contains filtered or unexported fields
}
func (*S3BackendConfig) Descriptor
deprecated
added in
v0.1.18
func (*S3BackendConfig) Descriptor() ([]byte, []int)
Deprecated: Use S3BackendConfig.ProtoReflect.Descriptor instead.
func (*S3BackendConfig) GetCaCertPath ¶ added in v0.1.19
func (x *S3BackendConfig) GetCaCertPath() string
func (*S3BackendConfig) GetClientCertPath ¶
func (x *S3BackendConfig) GetClientCertPath() string
func (*S3BackendConfig) GetClientKeyPath ¶
func (x *S3BackendConfig) GetClientKeyPath() string
func (*S3BackendConfig) GetHttpConcurrency ¶ added in v0.1.18
func (x *S3BackendConfig) GetHttpConcurrency() uint32
func (*S3BackendConfig) GetInsecureSkipVerify ¶ added in v0.1.19
func (x *S3BackendConfig) GetInsecureSkipVerify() bool
func (*S3BackendConfig) GetStripeSizeBytes ¶ added in v0.1.18
func (x *S3BackendConfig) GetStripeSizeBytes() uint64
func (*S3BackendConfig) GetUrl ¶ added in v0.1.18
func (x *S3BackendConfig) GetUrl() string
func (*S3BackendConfig) ProtoMessage ¶ added in v0.1.18
func (*S3BackendConfig) ProtoMessage()
func (*S3BackendConfig) ProtoReflect ¶ added in v0.1.18
func (x *S3BackendConfig) ProtoReflect() protoreflect.Message
func (*S3BackendConfig) Reset ¶ added in v0.1.18
func (x *S3BackendConfig) Reset()
func (*S3BackendConfig) String ¶ added in v0.1.18
func (x *S3BackendConfig) String() string
type S3FrontendConfig ¶ added in v0.1.18
type S3FrontendConfig struct {
// Socket address for S3-compatible listeners; each serving shard binds it with SO_REUSEPORT.
Addr string `protobuf:"bytes,1,opt,name=addr,proto3" json:"addr,omitempty"`
// contains filtered or unexported fields
}
func (*S3FrontendConfig) Descriptor
deprecated
added in
v0.1.18
func (*S3FrontendConfig) Descriptor() ([]byte, []int)
Deprecated: Use S3FrontendConfig.ProtoReflect.Descriptor instead.
func (*S3FrontendConfig) GetAddr ¶ added in v0.1.18
func (x *S3FrontendConfig) GetAddr() string
func (*S3FrontendConfig) ProtoMessage ¶ added in v0.1.18
func (*S3FrontendConfig) ProtoMessage()
func (*S3FrontendConfig) ProtoReflect ¶ added in v0.1.18
func (x *S3FrontendConfig) ProtoReflect() protoreflect.Message
func (*S3FrontendConfig) Reset ¶ added in v0.1.18
func (x *S3FrontendConfig) Reset()
func (*S3FrontendConfig) String ¶ added in v0.1.18
func (x *S3FrontendConfig) String() string
type StartupCfg ¶
type StartupCfg struct {
Memory *MemoryCfg `protobuf:"bytes,1,opt,name=memory,proto3" json:"memory,omitempty"`
Fabric *FabricCfg `protobuf:"bytes,2,opt,name=fabric,proto3" json:"fabric,omitempty"`
Topology *TopologyCfg `protobuf:"bytes,3,opt,name=topology,proto3" json:"topology,omitempty"`
Metrics *MetricsCfg `protobuf:"bytes,4,opt,name=metrics,proto3" json:"metrics,omitempty"`
// contains filtered or unexported fields
}
func (*StartupCfg) Descriptor
deprecated
func (*StartupCfg) Descriptor() ([]byte, []int)
Deprecated: Use StartupCfg.ProtoReflect.Descriptor instead.
func (*StartupCfg) GetFabric ¶
func (x *StartupCfg) GetFabric() *FabricCfg
func (*StartupCfg) GetMemory ¶
func (x *StartupCfg) GetMemory() *MemoryCfg
func (*StartupCfg) GetMetrics ¶
func (x *StartupCfg) GetMetrics() *MetricsCfg
func (*StartupCfg) GetTopology ¶
func (x *StartupCfg) GetTopology() *TopologyCfg
func (*StartupCfg) ProtoMessage ¶
func (*StartupCfg) ProtoMessage()
func (*StartupCfg) ProtoReflect ¶
func (x *StartupCfg) ProtoReflect() protoreflect.Message
func (*StartupCfg) Reset ¶
func (x *StartupCfg) Reset()
func (*StartupCfg) String ¶
func (x *StartupCfg) String() string
type TcpFabricBinds ¶ added in v0.1.18
type TcpFabricBinds struct {
Addr string `protobuf:"bytes,1,opt,name=addr,proto3" json:"addr,omitempty"`
// contains filtered or unexported fields
}
func (*TcpFabricBinds) Descriptor
deprecated
added in
v0.1.18
func (*TcpFabricBinds) Descriptor() ([]byte, []int)
Deprecated: Use TcpFabricBinds.ProtoReflect.Descriptor instead.
func (*TcpFabricBinds) GetAddr ¶ added in v0.1.18
func (x *TcpFabricBinds) GetAddr() string
func (*TcpFabricBinds) ProtoMessage ¶ added in v0.1.18
func (*TcpFabricBinds) ProtoMessage()
func (*TcpFabricBinds) ProtoReflect ¶ added in v0.1.18
func (x *TcpFabricBinds) ProtoReflect() protoreflect.Message
func (*TcpFabricBinds) Reset ¶ added in v0.1.18
func (x *TcpFabricBinds) Reset()
func (*TcpFabricBinds) String ¶ added in v0.1.18
func (x *TcpFabricBinds) String() string
type TcpPeerConfig ¶ added in v0.1.18
type TcpPeerConfig struct {
// TCP socket address used as this peer's fabric wire address.
Addr string `protobuf:"bytes,1,opt,name=addr,proto3" json:"addr,omitempty"`
// contains filtered or unexported fields
}
func (*TcpPeerConfig) Descriptor
deprecated
added in
v0.1.18
func (*TcpPeerConfig) Descriptor() ([]byte, []int)
Deprecated: Use TcpPeerConfig.ProtoReflect.Descriptor instead.
func (*TcpPeerConfig) GetAddr ¶ added in v0.1.18
func (x *TcpPeerConfig) GetAddr() string
func (*TcpPeerConfig) ProtoMessage ¶ added in v0.1.18
func (*TcpPeerConfig) ProtoMessage()
func (*TcpPeerConfig) ProtoReflect ¶ added in v0.1.18
func (x *TcpPeerConfig) ProtoReflect() protoreflect.Message
func (*TcpPeerConfig) Reset ¶ added in v0.1.18
func (x *TcpPeerConfig) Reset()
func (*TcpPeerConfig) String ¶ added in v0.1.18
func (x *TcpPeerConfig) String() string
type TopologyCfg ¶
type TopologyCfg struct {
// Place shards on SMT sibling CPUs as well as physical cores. Defaults to false,
// so one serving shard is placed per physical core unless explicitly enabled.
UseSmtSiblings bool `protobuf:"varint,1,opt,name=use_smt_siblings,json=useSmtSiblings,proto3" json:"use_smt_siblings,omitempty"`
// Schedule shards onto isolcpus-isolated CPUs too. Defaults to false, so CPUs
// isolated by the kernel are reserved for other workloads unless explicitly included.
IgnoreIsolated bool `protobuf:"varint,2,opt,name=ignore_isolated,json=ignoreIsolated,proto3" json:"ignore_isolated,omitempty"`
// Allow placing a shard on each NUMA node's CPU 0. Defaults to false, reserving
// those CPUs for kernel and housekeeping work unless explicitly included.
IncludeNodeCpu0 bool `protobuf:"varint,3,opt,name=include_node_cpu0,json=includeNodeCpu0,proto3" json:"include_node_cpu0,omitempty"`
// Use HCA ports that are not in the active state.
AllowInactivePort bool `protobuf:"varint,4,opt,name=allow_inactive_port,json=allowInactivePort,proto3" json:"allow_inactive_port,omitempty"`
// Disable RDMA and force the libfabric tcp provider. Defaults to false. This is
// an operator escape hatch for hosts where discovered RDMA devices are present
// but should not be used by this daemon.
DisableRdma bool `protobuf:"varint,5,opt,name=disable_rdma,json=disableRdma,proto3" json:"disable_rdma,omitempty"`
// Cap on the number of serving-shard CPUs to pin. When unset, claims every
// usable core left after storage and NIC-worker reservations.
ServingCores *uint64 `protobuf:"varint,6,opt,name=serving_cores,json=servingCores,proto3,oneof" json:"serving_cores,omitempty"`
// NIC-worker CPUs to pin per active HCA. Defaults to 4 when unset.
NicWorkers *uint64 `protobuf:"varint,7,opt,name=nic_workers,json=nicWorkers,proto3,oneof" json:"nic_workers,omitempty"`
// contains filtered or unexported fields
}
func (*TopologyCfg) Descriptor
deprecated
func (*TopologyCfg) Descriptor() ([]byte, []int)
Deprecated: Use TopologyCfg.ProtoReflect.Descriptor instead.
func (*TopologyCfg) GetAllowInactivePort ¶
func (x *TopologyCfg) GetAllowInactivePort() bool
func (*TopologyCfg) GetDisableRdma ¶
func (x *TopologyCfg) GetDisableRdma() bool
func (*TopologyCfg) GetIgnoreIsolated ¶
func (x *TopologyCfg) GetIgnoreIsolated() bool
func (*TopologyCfg) GetIncludeNodeCpu0 ¶
func (x *TopologyCfg) GetIncludeNodeCpu0() bool
func (*TopologyCfg) GetNicWorkers ¶
func (x *TopologyCfg) GetNicWorkers() uint64
func (*TopologyCfg) GetServingCores ¶
func (x *TopologyCfg) GetServingCores() uint64
func (*TopologyCfg) GetUseSmtSiblings ¶
func (x *TopologyCfg) GetUseSmtSiblings() bool
func (*TopologyCfg) ProtoMessage ¶
func (*TopologyCfg) ProtoMessage()
func (*TopologyCfg) ProtoReflect ¶
func (x *TopologyCfg) ProtoReflect() protoreflect.Message
func (*TopologyCfg) Reset ¶
func (x *TopologyCfg) Reset()
func (*TopologyCfg) String ¶
func (x *TopologyCfg) String() string
type TopologyPrefixWeight ¶
type TopologyPrefixWeight struct {
// Tag slot this weight applies to when local and candidate peers share all
// tags through this index.
TagIndex uint32 `protobuf:"varint,1,opt,name=tag_index,json=tagIndex,proto3" json:"tag_index,omitempty"`
// Floating-point bias for candidates sharing this prefix. Selection computes
// score = normalized_rendezvous_hash - weight and chooses the lowest score.
// Zero is neutral.
Weight float64 `protobuf:"fixed64,2,opt,name=weight,proto3" json:"weight,omitempty"`
// contains filtered or unexported fields
}
func (*TopologyPrefixWeight) Descriptor
deprecated
func (*TopologyPrefixWeight) Descriptor() ([]byte, []int)
Deprecated: Use TopologyPrefixWeight.ProtoReflect.Descriptor instead.
func (*TopologyPrefixWeight) GetTagIndex ¶
func (x *TopologyPrefixWeight) GetTagIndex() uint32
func (*TopologyPrefixWeight) GetWeight ¶
func (x *TopologyPrefixWeight) GetWeight() float64
func (*TopologyPrefixWeight) ProtoMessage ¶
func (*TopologyPrefixWeight) ProtoMessage()
func (*TopologyPrefixWeight) ProtoReflect ¶
func (x *TopologyPrefixWeight) ProtoReflect() protoreflect.Message
func (*TopologyPrefixWeight) Reset ¶
func (x *TopologyPrefixWeight) Reset()
func (*TopologyPrefixWeight) String ¶
func (x *TopologyPrefixWeight) String() string
type TopologyWeighting ¶
type TopologyWeighting struct {
// Per-prefix weights keyed by tag index. Tag index 0 is the first/coarsest
// tag, such as a region or datacenter; tag index 1 is the next tag, such as
// an availability zone. Weight 0 is neutral, positive values favor peers
// sharing that prefix, and negative values penalize them.
PrefixWeights []*TopologyPrefixWeight `protobuf:"bytes,1,rep,name=prefix_weights,json=prefixWeights,proto3" json:"prefix_weights,omitempty"`
// contains filtered or unexported fields
}
Weights applied to automatic topology-aware finger selection. A configured weighting switches finger selection from hard locality to weighted rendezvous. Only the most-specific matching prefix weight applies.
func (*TopologyWeighting) Descriptor
deprecated
func (*TopologyWeighting) Descriptor() ([]byte, []int)
Deprecated: Use TopologyWeighting.ProtoReflect.Descriptor instead.
func (*TopologyWeighting) GetPrefixWeights ¶
func (x *TopologyWeighting) GetPrefixWeights() []*TopologyPrefixWeight
func (*TopologyWeighting) ProtoMessage ¶
func (*TopologyWeighting) ProtoMessage()
func (*TopologyWeighting) ProtoReflect ¶
func (x *TopologyWeighting) ProtoReflect() protoreflect.Message
func (*TopologyWeighting) Reset ¶
func (x *TopologyWeighting) Reset()
func (*TopologyWeighting) String ¶
func (x *TopologyWeighting) String() string