Documentation
¶
Index ¶
- type Array
- type DeviceInfo
- func (device DeviceInfo) CommandAdd(ringFilename string) string
- func (device DeviceInfo) CommandRemove(ringFilename string) string
- func (device DeviceInfo) CommandSetMeta(ringFilename string, desiredMeta map[string]string) string
- func (device DeviceInfo) CommandSetMetaNode(ringFilename string, desiredMeta map[string]string) string
- func (device DeviceInfo) CommandSetWeight(ringFilename string, desiredWeight float64) string
- func (device DeviceInfo) IPAddressPort() string
- type RingInfo
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type DeviceInfo ¶
type DeviceInfo struct {
ID uint64
Region uint64
Zone uint64
NodeIP string `yaml:"ip" mapstructure:"ip"`
Port uint64
ReplicationIP string `yaml:"replication_ip" mapstructure:"replication_ip"`
ReplicationPort uint64 `yaml:"replication_port" mapstructure:"replication_port"`
Name string `mapstructure:"device"`
Weight float64
Partitions uint64 `mapstructure:"parts"`
Balance float64
Meta *map[string]string `yaml:"meta,omitempty"`
// contains filtered or unexported fields
}
func (DeviceInfo) CommandAdd ¶
func (device DeviceInfo) CommandAdd(ringFilename string) string
func (DeviceInfo) CommandRemove ¶
func (device DeviceInfo) CommandRemove(ringFilename string) string
func (DeviceInfo) CommandSetMeta ¶
func (device DeviceInfo) CommandSetMeta(ringFilename string, desiredMeta map[string]string) string
func (DeviceInfo) CommandSetMetaNode ¶
func (device DeviceInfo) CommandSetMetaNode(ringFilename string, desiredMeta map[string]string) string
func (DeviceInfo) CommandSetWeight ¶
func (device DeviceInfo) CommandSetWeight(ringFilename string, desiredWeight float64) string
func (DeviceInfo) IPAddressPort ¶
func (device DeviceInfo) IPAddressPort() string
type RingInfo ¶
type RingInfo struct {
FileName string `yaml:"file_name"`
Version uint64
ID string
Partitions uint64
Replicas float64
Regions uint64
Zones uint64
DeviceCount uint64 `yaml:"device_count"`
Balance float64
Dispersion float64
ReassignedCooldown uint64 `yaml:"reassigned_cooldown"`
ReassignedRemaining time.Time `yaml:"reassigned_remaining"`
OverloadFactorPercent float64 `yaml:"overload_factor_Percent"`
OverloadFactorDecimal float64 `yaml:"overload_factor_decimal"`
Devices []DeviceInfo
}
RingInfo contains the meta data about the ring file
func (RingInfo) CommandSetOverload ¶
func (RingInfo) FindDevice ¶
func (ring RingInfo) FindDevice(zone uint64, nodeIP string, port uint64, diskName string) (*DeviceInfo, error)
FindDevice returns a given disk that matches the in
Click to show internal directories.
Click to hide internal directories.