netmap

package
v1.0.0-rc.17 Latest Latest
Warning

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

Go to latest
Published: Feb 4, 2026 License: Apache-2.0 Imports: 12 Imported by: 3

Documentation

Index

Constants

View Source
const (
	NetmapService_LocalNodeInfo_FullMethodName  = "/neo.fs.v2.netmap.NetmapService/LocalNodeInfo"
	NetmapService_NetworkInfo_FullMethodName    = "/neo.fs.v2.netmap.NetmapService/NetworkInfo"
	NetmapService_NetmapSnapshot_FullMethodName = "/neo.fs.v2.netmap.NetmapService/NetmapSnapshot"
)

Variables

View Source
var (
	Operation_name = map[int32]string{
		0: "OPERATION_UNSPECIFIED",
		1: "EQ",
		2: "NE",
		3: "GT",
		4: "GE",
		5: "LT",
		6: "LE",
		7: "OR",
		8: "AND",
	}
	Operation_value = map[string]int32{
		"OPERATION_UNSPECIFIED": 0,
		"EQ":                    1,
		"NE":                    2,
		"GT":                    3,
		"GE":                    4,
		"LT":                    5,
		"LE":                    6,
		"OR":                    7,
		"AND":                   8,
	}
)

Enum value maps for Operation.

View Source
var (
	Clause_name = map[int32]string{
		0: "CLAUSE_UNSPECIFIED",
		1: "SAME",
		2: "DISTINCT",
	}
	Clause_value = map[string]int32{
		"CLAUSE_UNSPECIFIED": 0,
		"SAME":               1,
		"DISTINCT":           2,
	}
)

Enum value maps for Clause.

View Source
var (
	NodeInfo_State_name = map[int32]string{
		0: "UNSPECIFIED",
		1: "ONLINE",
		2: "OFFLINE",
		3: "MAINTENANCE",
	}
	NodeInfo_State_value = map[string]int32{
		"UNSPECIFIED": 0,
		"ONLINE":      1,
		"OFFLINE":     2,
		"MAINTENANCE": 3,
	}
)

Enum value maps for NodeInfo_State.

View Source
var File_proto_netmap_service_proto protoreflect.FileDescriptor
View Source
var File_proto_netmap_types_proto protoreflect.FileDescriptor
View Source
var NetmapService_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "neo.fs.v2.netmap.NetmapService",
	HandlerType: (*NetmapServiceServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "LocalNodeInfo",
			Handler:    _NetmapService_LocalNodeInfo_Handler,
		},
		{
			MethodName: "NetworkInfo",
			Handler:    _NetmapService_NetworkInfo_Handler,
		},
		{
			MethodName: "NetmapSnapshot",
			Handler:    _NetmapService_NetmapSnapshot_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "proto/netmap/service.proto",
}

NetmapService_ServiceDesc is the grpc.ServiceDesc for NetmapService service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

Functions

func RegisterNetmapServiceServer

func RegisterNetmapServiceServer(s grpc.ServiceRegistrar, srv NetmapServiceServer)

Types

type Clause

type Clause int32

Selector modifier shows how the node set will be formed. By default selector just groups nodes into a bucket by attribute, selecting nodes only by their hash distance.

const (
	// No modifier defined. Nodes will be selected from the bucket randomly
	Clause_CLAUSE_UNSPECIFIED Clause = 0
	// SAME will select only nodes having the same value of bucket attribute
	Clause_SAME Clause = 1
	// DISTINCT will select nodes having different values of bucket attribute
	Clause_DISTINCT Clause = 2
)

func (Clause) Descriptor

func (Clause) Descriptor() protoreflect.EnumDescriptor

func (Clause) Enum

func (x Clause) Enum() *Clause

func (Clause) EnumDescriptor deprecated

func (Clause) EnumDescriptor() ([]byte, []int)

Deprecated: Use Clause.Descriptor instead.

func (Clause) Number

func (x Clause) Number() protoreflect.EnumNumber

func (Clause) String

func (x Clause) String() string

func (Clause) Type

func (Clause) Type() protoreflect.EnumType

type Filter

type Filter struct {

	// Name of the filter or a reference to a named filter. '*' means
	// application to the whole unfiltered NetworkMap. At top level it's used as a
	// filter name. At lower levels it's considered to be a reference to another
	// named filter
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Key to filter
	Key string `protobuf:"bytes,2,opt,name=key,proto3" json:"key,omitempty"`
	// Filtering operation
	Op Operation `protobuf:"varint,3,opt,name=op,proto3,enum=neo.fs.v2.netmap.Operation" json:"op,omitempty"`
	// Value to match
	Value string `protobuf:"bytes,4,opt,name=value,proto3" json:"value,omitempty"`
	// List of inner filters. Top level operation will be applied to the whole
	// list.
	Filters []*Filter `protobuf:"bytes,5,rep,name=filters,proto3" json:"filters,omitempty"`
	// contains filtered or unexported fields
}

This filter will return the subset of nodes from `NetworkMap` or another filter's results that will satisfy filter's conditions.

func (*Filter) Descriptor deprecated

func (*Filter) Descriptor() ([]byte, []int)

Deprecated: Use Filter.ProtoReflect.Descriptor instead.

func (*Filter) GetFilters

func (x *Filter) GetFilters() []*Filter

func (*Filter) GetKey

func (x *Filter) GetKey() string

func (*Filter) GetName

func (x *Filter) GetName() string

func (*Filter) GetOp

func (x *Filter) GetOp() Operation

func (*Filter) GetValue

func (x *Filter) GetValue() string

func (*Filter) MarshalStable

func (x *Filter) MarshalStable(b []byte)

MarshalStable writes the Filter in Protocol Buffers V3 format with ascending order of fields by number into b. MarshalStable uses exactly Filter.MarshaledSize first bytes of b. MarshalStable is NPE-safe.

func (*Filter) MarshaledSize

func (x *Filter) MarshaledSize() int

MarshaledSize returns size of the Filter in Protocol Buffers V3 format in bytes. MarshaledSize is NPE-safe.

func (*Filter) ProtoMessage

func (*Filter) ProtoMessage()

func (*Filter) ProtoReflect

func (x *Filter) ProtoReflect() protoreflect.Message

func (*Filter) Reset

func (x *Filter) Reset()

func (*Filter) String

func (x *Filter) String() string

type LocalNodeInfoRequest

type LocalNodeInfoRequest struct {

	// Body of the LocalNodeInfo request message
	Body *LocalNodeInfoRequest_Body `protobuf:"bytes,1,opt,name=body,proto3" json:"body,omitempty"`
	// Carries request meta information. Header data is used only to regulate
	// message transport and does not affect request execution.
	MetaHeader *session.RequestMetaHeader `protobuf:"bytes,2,opt,name=meta_header,json=metaHeader,proto3" json:"meta_header,omitempty"`
	// Carries request verification information. This header is used to
	// authenticate the nodes of the message route and check the correctness of
	// transmission.
	VerifyHeader *session.RequestVerificationHeader `protobuf:"bytes,3,opt,name=verify_header,json=verifyHeader,proto3" json:"verify_header,omitempty"`
	// contains filtered or unexported fields
}

Get NodeInfo structure directly from a particular node

func (*LocalNodeInfoRequest) Descriptor deprecated

func (*LocalNodeInfoRequest) Descriptor() ([]byte, []int)

Deprecated: Use LocalNodeInfoRequest.ProtoReflect.Descriptor instead.

func (*LocalNodeInfoRequest) GetBody

func (*LocalNodeInfoRequest) GetMetaHeader

func (x *LocalNodeInfoRequest) GetMetaHeader() *session.RequestMetaHeader

func (*LocalNodeInfoRequest) GetVerifyHeader

func (*LocalNodeInfoRequest) ProtoMessage

func (*LocalNodeInfoRequest) ProtoMessage()

func (*LocalNodeInfoRequest) ProtoReflect

func (x *LocalNodeInfoRequest) ProtoReflect() protoreflect.Message

func (*LocalNodeInfoRequest) Reset

func (x *LocalNodeInfoRequest) Reset()

func (*LocalNodeInfoRequest) String

func (x *LocalNodeInfoRequest) String() string

type LocalNodeInfoRequest_Body

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

LocalNodeInfo request body is empty.

func (*LocalNodeInfoRequest_Body) Descriptor deprecated

func (*LocalNodeInfoRequest_Body) Descriptor() ([]byte, []int)

Deprecated: Use LocalNodeInfoRequest_Body.ProtoReflect.Descriptor instead.

func (*LocalNodeInfoRequest_Body) MarshalStable

func (x *LocalNodeInfoRequest_Body) MarshalStable([]byte)

MarshalStable writes the LocalNodeInfoRequest_Body in Protocol Buffers V3 format with ascending order of fields by number into b. MarshalStable uses exactly LocalNodeInfoRequest_Body.MarshaledSize first bytes of b. MarshalStable is NPE-safe.

func (*LocalNodeInfoRequest_Body) MarshaledSize

func (x *LocalNodeInfoRequest_Body) MarshaledSize() int

MarshaledSize returns size of the LocalNodeInfoRequest_Body in Protocol Buffers V3 format in bytes. MarshaledSize is NPE-safe.

func (*LocalNodeInfoRequest_Body) ProtoMessage

func (*LocalNodeInfoRequest_Body) ProtoMessage()

func (*LocalNodeInfoRequest_Body) ProtoReflect

func (*LocalNodeInfoRequest_Body) Reset

func (x *LocalNodeInfoRequest_Body) Reset()

func (*LocalNodeInfoRequest_Body) String

func (x *LocalNodeInfoRequest_Body) String() string

type LocalNodeInfoResponse

type LocalNodeInfoResponse struct {

	// Body of the balance response message.
	Body *LocalNodeInfoResponse_Body `protobuf:"bytes,1,opt,name=body,proto3" json:"body,omitempty"`
	// Carries response meta information. Header data is used only to regulate
	// message transport and does not affect response execution.
	MetaHeader *session.ResponseMetaHeader `protobuf:"bytes,2,opt,name=meta_header,json=metaHeader,proto3" json:"meta_header,omitempty"`
	// Carries response verification information. This header is used to
	// authenticate the nodes of the message route and check the correctness of
	// transmission.
	VerifyHeader *session.ResponseVerificationHeader `protobuf:"bytes,3,opt,name=verify_header,json=verifyHeader,proto3" json:"verify_header,omitempty"`
	// contains filtered or unexported fields
}

Local Node Info, including API Version in use

func (*LocalNodeInfoResponse) Descriptor deprecated

func (*LocalNodeInfoResponse) Descriptor() ([]byte, []int)

Deprecated: Use LocalNodeInfoResponse.ProtoReflect.Descriptor instead.

func (*LocalNodeInfoResponse) GetBody

func (*LocalNodeInfoResponse) GetMetaHeader

func (x *LocalNodeInfoResponse) GetMetaHeader() *session.ResponseMetaHeader

func (*LocalNodeInfoResponse) GetVerifyHeader

func (*LocalNodeInfoResponse) ProtoMessage

func (*LocalNodeInfoResponse) ProtoMessage()

func (*LocalNodeInfoResponse) ProtoReflect

func (x *LocalNodeInfoResponse) ProtoReflect() protoreflect.Message

func (*LocalNodeInfoResponse) Reset

func (x *LocalNodeInfoResponse) Reset()

func (*LocalNodeInfoResponse) String

func (x *LocalNodeInfoResponse) String() string

type LocalNodeInfoResponse_Body

type LocalNodeInfoResponse_Body struct {

	// Latest NeoFS API version in use
	Version *refs.Version `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
	// NodeInfo structure with recent information from node itself
	NodeInfo *NodeInfo `protobuf:"bytes,2,opt,name=node_info,json=nodeInfo,proto3" json:"node_info,omitempty"`
	// contains filtered or unexported fields
}

Local Node Info, including API Version in use.

func (*LocalNodeInfoResponse_Body) Descriptor deprecated

func (*LocalNodeInfoResponse_Body) Descriptor() ([]byte, []int)

Deprecated: Use LocalNodeInfoResponse_Body.ProtoReflect.Descriptor instead.

func (*LocalNodeInfoResponse_Body) GetNodeInfo

func (x *LocalNodeInfoResponse_Body) GetNodeInfo() *NodeInfo

func (*LocalNodeInfoResponse_Body) GetVersion

func (x *LocalNodeInfoResponse_Body) GetVersion() *refs.Version

func (*LocalNodeInfoResponse_Body) MarshalStable

func (x *LocalNodeInfoResponse_Body) MarshalStable(b []byte)

MarshalStable writes the LocalNodeInfoResponse_Body in Protocol Buffers V3 format with ascending order of fields by number into b. MarshalStable uses exactly LocalNodeInfoResponse_Body.MarshaledSize first bytes of b. MarshalStable is NPE-safe.

func (*LocalNodeInfoResponse_Body) MarshaledSize

func (x *LocalNodeInfoResponse_Body) MarshaledSize() int

MarshaledSize returns size of the LocalNodeInfoResponse_Body in Protocol Buffers V3 format in bytes. MarshaledSize is NPE-safe.

func (*LocalNodeInfoResponse_Body) ProtoMessage

func (*LocalNodeInfoResponse_Body) ProtoMessage()

func (*LocalNodeInfoResponse_Body) ProtoReflect

func (*LocalNodeInfoResponse_Body) Reset

func (x *LocalNodeInfoResponse_Body) Reset()

func (*LocalNodeInfoResponse_Body) String

func (x *LocalNodeInfoResponse_Body) String() string

type Netmap

type Netmap struct {

	// Network map revision number.
	Epoch uint64 `protobuf:"varint,1,opt,name=epoch,proto3" json:"epoch,omitempty"`
	// Nodes presented in network.
	Nodes []*NodeInfo `protobuf:"bytes,2,rep,name=nodes,proto3" json:"nodes,omitempty"`
	// contains filtered or unexported fields
}

Network map structure

func (*Netmap) Descriptor deprecated

func (*Netmap) Descriptor() ([]byte, []int)

Deprecated: Use Netmap.ProtoReflect.Descriptor instead.

func (*Netmap) GetEpoch

func (x *Netmap) GetEpoch() uint64

func (*Netmap) GetNodes

func (x *Netmap) GetNodes() []*NodeInfo

func (*Netmap) MarshalStable

func (x *Netmap) MarshalStable(b []byte)

MarshalStable writes the Netmap in Protocol Buffers V3 format with ascending order of fields by number into b. MarshalStable uses exactly Netmap.MarshaledSize first bytes of b. MarshalStable is NPE-safe.

func (*Netmap) MarshaledSize

func (x *Netmap) MarshaledSize() int

MarshaledSize returns size of the Netmap in Protocol Buffers V3 format in bytes. MarshaledSize is NPE-safe.

func (*Netmap) ProtoMessage

func (*Netmap) ProtoMessage()

func (*Netmap) ProtoReflect

func (x *Netmap) ProtoReflect() protoreflect.Message

func (*Netmap) Reset

func (x *Netmap) Reset()

func (*Netmap) String

func (x *Netmap) String() string

type NetmapServiceClient

type NetmapServiceClient interface {
	// Get NodeInfo structure from the particular node directly.
	// Node information can be taken from `Netmap` smart contract. In some cases, though,
	// one may want to get recent information directly or to talk to the node not yet
	// present in the `Network Map` to find out what API version can be used for
	// further communication. This can be also used to check if a node is up and running.
	//
	// Statuses:
	// - **OK** (0, SECTION_SUCCESS):
	// information about the server has been successfully read;
	// - Common failures (SECTION_FAILURE_COMMON).
	LocalNodeInfo(ctx context.Context, in *LocalNodeInfoRequest, opts ...grpc.CallOption) (*LocalNodeInfoResponse, error)
	// Read recent information about the NeoFS network.
	//
	// Statuses:
	// - **OK** (0, SECTION_SUCCESS):
	// information about the current network state has been successfully read;
	// - Common failures (SECTION_FAILURE_COMMON).
	NetworkInfo(ctx context.Context, in *NetworkInfoRequest, opts ...grpc.CallOption) (*NetworkInfoResponse, error)
	// Returns network map snapshot of the current NeoFS epoch.
	//
	// Statuses:
	// - **OK** (0, SECTION_SUCCESS):
	// information about the current network map has been successfully read;
	// - Common failures (SECTION_FAILURE_COMMON).
	NetmapSnapshot(ctx context.Context, in *NetmapSnapshotRequest, opts ...grpc.CallOption) (*NetmapSnapshotResponse, error)
}

NetmapServiceClient is the client API for NetmapService service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

`NetmapService` provides methods to work with `Network Map` and the information required to build it. The resulting `Network Map` is stored in FS chain `Netmap` smart contract, while related information can be obtained from other NeoFS nodes.

type NetmapServiceServer

type NetmapServiceServer interface {
	// Get NodeInfo structure from the particular node directly.
	// Node information can be taken from `Netmap` smart contract. In some cases, though,
	// one may want to get recent information directly or to talk to the node not yet
	// present in the `Network Map` to find out what API version can be used for
	// further communication. This can be also used to check if a node is up and running.
	//
	// Statuses:
	// - **OK** (0, SECTION_SUCCESS):
	// information about the server has been successfully read;
	// - Common failures (SECTION_FAILURE_COMMON).
	LocalNodeInfo(context.Context, *LocalNodeInfoRequest) (*LocalNodeInfoResponse, error)
	// Read recent information about the NeoFS network.
	//
	// Statuses:
	// - **OK** (0, SECTION_SUCCESS):
	// information about the current network state has been successfully read;
	// - Common failures (SECTION_FAILURE_COMMON).
	NetworkInfo(context.Context, *NetworkInfoRequest) (*NetworkInfoResponse, error)
	// Returns network map snapshot of the current NeoFS epoch.
	//
	// Statuses:
	// - **OK** (0, SECTION_SUCCESS):
	// information about the current network map has been successfully read;
	// - Common failures (SECTION_FAILURE_COMMON).
	NetmapSnapshot(context.Context, *NetmapSnapshotRequest) (*NetmapSnapshotResponse, error)
}

NetmapServiceServer is the server API for NetmapService service. All implementations should embed UnimplementedNetmapServiceServer for forward compatibility.

`NetmapService` provides methods to work with `Network Map` and the information required to build it. The resulting `Network Map` is stored in FS chain `Netmap` smart contract, while related information can be obtained from other NeoFS nodes.

type NetmapSnapshotRequest

type NetmapSnapshotRequest struct {

	// Body of get netmap snapshot request message.
	Body *NetmapSnapshotRequest_Body `protobuf:"bytes,1,opt,name=body,proto3" json:"body,omitempty"`
	// Carries request meta information. Header data is used only to regulate
	// message transport and does not affect request execution.
	MetaHeader *session.RequestMetaHeader `protobuf:"bytes,2,opt,name=meta_header,json=metaHeader,proto3" json:"meta_header,omitempty"`
	// Carries request verification information. This header is used to
	// authenticate the nodes of the message route and check the correctness of
	// transmission.
	VerifyHeader *session.RequestVerificationHeader `protobuf:"bytes,3,opt,name=verify_header,json=verifyHeader,proto3" json:"verify_header,omitempty"`
	// contains filtered or unexported fields
}

Get netmap snapshot request

func (*NetmapSnapshotRequest) Descriptor deprecated

func (*NetmapSnapshotRequest) Descriptor() ([]byte, []int)

Deprecated: Use NetmapSnapshotRequest.ProtoReflect.Descriptor instead.

func (*NetmapSnapshotRequest) GetBody

func (*NetmapSnapshotRequest) GetMetaHeader

func (x *NetmapSnapshotRequest) GetMetaHeader() *session.RequestMetaHeader

func (*NetmapSnapshotRequest) GetVerifyHeader

func (*NetmapSnapshotRequest) ProtoMessage

func (*NetmapSnapshotRequest) ProtoMessage()

func (*NetmapSnapshotRequest) ProtoReflect

func (x *NetmapSnapshotRequest) ProtoReflect() protoreflect.Message

func (*NetmapSnapshotRequest) Reset

func (x *NetmapSnapshotRequest) Reset()

func (*NetmapSnapshotRequest) String

func (x *NetmapSnapshotRequest) String() string

type NetmapSnapshotRequest_Body

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

Get netmap snapshot request body.

func (*NetmapSnapshotRequest_Body) Descriptor deprecated

func (*NetmapSnapshotRequest_Body) Descriptor() ([]byte, []int)

Deprecated: Use NetmapSnapshotRequest_Body.ProtoReflect.Descriptor instead.

func (*NetmapSnapshotRequest_Body) MarshalStable

func (x *NetmapSnapshotRequest_Body) MarshalStable([]byte)

MarshalStable writes the NetmapSnapshotRequest_Body in Protocol Buffers V3 format with ascending order of fields by number into b. MarshalStable uses exactly NetmapSnapshotRequest_Body.MarshaledSize first bytes of b. MarshalStable is NPE-safe.

func (*NetmapSnapshotRequest_Body) MarshaledSize

func (x *NetmapSnapshotRequest_Body) MarshaledSize() int

MarshaledSize returns size of the NetmapSnapshotRequest_Body in Protocol Buffers V3 format in bytes. MarshaledSize is NPE-safe.

func (*NetmapSnapshotRequest_Body) ProtoMessage

func (*NetmapSnapshotRequest_Body) ProtoMessage()

func (*NetmapSnapshotRequest_Body) ProtoReflect

func (*NetmapSnapshotRequest_Body) Reset

func (x *NetmapSnapshotRequest_Body) Reset()

func (*NetmapSnapshotRequest_Body) String

func (x *NetmapSnapshotRequest_Body) String() string

type NetmapSnapshotResponse

type NetmapSnapshotResponse struct {

	// Body of get netmap snapshot response message.
	Body *NetmapSnapshotResponse_Body `protobuf:"bytes,1,opt,name=body,proto3" json:"body,omitempty"`
	// Carries response meta information. Header data is used only to regulate
	// message transport and does not affect response execution.
	MetaHeader *session.ResponseMetaHeader `protobuf:"bytes,2,opt,name=meta_header,json=metaHeader,proto3" json:"meta_header,omitempty"`
	// Carries response verification information. This header is used to
	// authenticate the nodes of the message route and check the correctness of
	// transmission.
	VerifyHeader *session.ResponseVerificationHeader `protobuf:"bytes,3,opt,name=verify_header,json=verifyHeader,proto3" json:"verify_header,omitempty"`
	// contains filtered or unexported fields
}

Response with current netmap snapshot

func (*NetmapSnapshotResponse) Descriptor deprecated

func (*NetmapSnapshotResponse) Descriptor() ([]byte, []int)

Deprecated: Use NetmapSnapshotResponse.ProtoReflect.Descriptor instead.

func (*NetmapSnapshotResponse) GetBody

func (*NetmapSnapshotResponse) GetMetaHeader

func (*NetmapSnapshotResponse) GetVerifyHeader

func (*NetmapSnapshotResponse) ProtoMessage

func (*NetmapSnapshotResponse) ProtoMessage()

func (*NetmapSnapshotResponse) ProtoReflect

func (x *NetmapSnapshotResponse) ProtoReflect() protoreflect.Message

func (*NetmapSnapshotResponse) Reset

func (x *NetmapSnapshotResponse) Reset()

func (*NetmapSnapshotResponse) String

func (x *NetmapSnapshotResponse) String() string

type NetmapSnapshotResponse_Body

type NetmapSnapshotResponse_Body struct {

	// Structure of the requested network map.
	Netmap *Netmap `protobuf:"bytes,1,opt,name=netmap,proto3" json:"netmap,omitempty"`
	// contains filtered or unexported fields
}

Get netmap snapshot response body

func (*NetmapSnapshotResponse_Body) Descriptor deprecated

func (*NetmapSnapshotResponse_Body) Descriptor() ([]byte, []int)

Deprecated: Use NetmapSnapshotResponse_Body.ProtoReflect.Descriptor instead.

func (*NetmapSnapshotResponse_Body) GetNetmap

func (x *NetmapSnapshotResponse_Body) GetNetmap() *Netmap

func (*NetmapSnapshotResponse_Body) MarshalStable

func (x *NetmapSnapshotResponse_Body) MarshalStable(b []byte)

MarshalStable writes the NetmapSnapshotResponse_Body in Protocol Buffers V3 format with ascending order of fields by number into b. MarshalStable uses exactly NetmapSnapshotResponse_Body.MarshaledSize first bytes of b. MarshalStable is NPE-safe.

func (*NetmapSnapshotResponse_Body) MarshaledSize

func (x *NetmapSnapshotResponse_Body) MarshaledSize() int

MarshaledSize returns size of the NetmapSnapshotResponse_Body in Protocol Buffers V3 format in bytes. MarshaledSize is NPE-safe.

func (*NetmapSnapshotResponse_Body) ProtoMessage

func (*NetmapSnapshotResponse_Body) ProtoMessage()

func (*NetmapSnapshotResponse_Body) ProtoReflect

func (*NetmapSnapshotResponse_Body) Reset

func (x *NetmapSnapshotResponse_Body) Reset()

func (*NetmapSnapshotResponse_Body) String

func (x *NetmapSnapshotResponse_Body) String() string

type NetworkConfig

type NetworkConfig struct {

	// List of parameter values
	Parameters []*NetworkConfig_Parameter `protobuf:"bytes,1,rep,name=parameters,proto3" json:"parameters,omitempty"`
	// contains filtered or unexported fields
}

NeoFS network configuration

func (*NetworkConfig) Descriptor deprecated

func (*NetworkConfig) Descriptor() ([]byte, []int)

Deprecated: Use NetworkConfig.ProtoReflect.Descriptor instead.

func (*NetworkConfig) GetParameters

func (x *NetworkConfig) GetParameters() []*NetworkConfig_Parameter

func (*NetworkConfig) MarshalStable

func (x *NetworkConfig) MarshalStable(b []byte)

MarshalStable writes the NetworkConfig in Protocol Buffers V3 format with ascending order of fields by number into b. MarshalStable uses exactly NetworkConfig.MarshaledSize first bytes of b. MarshalStable is NPE-safe.

func (*NetworkConfig) MarshaledSize

func (x *NetworkConfig) MarshaledSize() int

MarshaledSize returns size of the NetworkConfig in Protocol Buffers V3 format in bytes. MarshaledSize is NPE-safe.

func (*NetworkConfig) ProtoMessage

func (*NetworkConfig) ProtoMessage()

func (*NetworkConfig) ProtoReflect

func (x *NetworkConfig) ProtoReflect() protoreflect.Message

func (*NetworkConfig) Reset

func (x *NetworkConfig) Reset()

func (*NetworkConfig) String

func (x *NetworkConfig) String() string

type NetworkConfig_Parameter

type NetworkConfig_Parameter struct {

	// Parameter key. UTF-8 encoded string (with no zero bytes).
	Key []byte `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	// Parameter value
	Value []byte `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
	// contains filtered or unexported fields
}

Single configuration parameter. Key MUST be network-unique.

System parameters:

  • **AuditFee** \ Fee paid by the storage group owner to the Inner Ring member. Value: little-endian integer. Default: 0.
  • **BasicIncomeRate** \ Cost of storing one gigabyte of data for a period of one epoch. Paid by container owner to container nodes. Value: little-endian integer. Default: 0.
  • **ContainerAliasFee** \ Fee paid for named container's creation by the container owner. Value: little-endian integer. Default: 0.
  • **ContainerFee** \ Fee paid for container creation by the container owner. Value: little-endian integer. Default: 0.
  • **EigenTrustAlpha** \ Alpha parameter of EigenTrust algorithm used in the Reputation system. Value: decimal floating-point number in UTF-8 string representation. Default: 0.
  • **EigenTrustIterations** \ Number of EigenTrust algorithm iterations to pass in the Reputation system. Value: little-endian integer. Default: 0.
  • **EpochDuration** \ NeoFS epoch duration measured in seconds. Value: little-endian integer. Default: 0.
  • **HomomorphicHashingDisabled** \ Flag of disabling the homomorphic hashing of objects' payload. Value: true if any byte != 0. Default: false.
  • **InnerRingCandidateFee** \ Fee for entrance to the Inner Ring paid by the candidate. Value: little-endian integer. Default: 0.
  • **MaintenanceModeAllowed** \ Flag allowing setting the MAINTENANCE state to storage nodes. Value: true if any byte != 0. Default: false.
  • **MaxObjectSize** \ Maximum size of physically stored NeoFS object measured in bytes. Value: little-endian integer. Default: 0.
  • **WithdrawFee** \ Fee paid for withdrawal of funds paid by the account owner. Value: little-endian integer. Default: 0.

func (*NetworkConfig_Parameter) Descriptor deprecated

func (*NetworkConfig_Parameter) Descriptor() ([]byte, []int)

Deprecated: Use NetworkConfig_Parameter.ProtoReflect.Descriptor instead.

func (*NetworkConfig_Parameter) GetKey

func (x *NetworkConfig_Parameter) GetKey() []byte

func (*NetworkConfig_Parameter) GetValue

func (x *NetworkConfig_Parameter) GetValue() []byte

func (*NetworkConfig_Parameter) MarshalStable

func (x *NetworkConfig_Parameter) MarshalStable(b []byte)

MarshalStable writes the NetworkConfig_Parameter in Protocol Buffers V3 format with ascending order of fields by number into b. MarshalStable uses exactly NetworkConfig_Parameter.MarshaledSize first bytes of b. MarshalStable is NPE-safe.

func (*NetworkConfig_Parameter) MarshaledSize

func (x *NetworkConfig_Parameter) MarshaledSize() int

MarshaledSize returns size of the NetworkConfig_Parameter in Protocol Buffers V3 format in bytes. MarshaledSize is NPE-safe.

func (*NetworkConfig_Parameter) ProtoMessage

func (*NetworkConfig_Parameter) ProtoMessage()

func (*NetworkConfig_Parameter) ProtoReflect

func (x *NetworkConfig_Parameter) ProtoReflect() protoreflect.Message

func (*NetworkConfig_Parameter) Reset

func (x *NetworkConfig_Parameter) Reset()

func (*NetworkConfig_Parameter) String

func (x *NetworkConfig_Parameter) String() string

type NetworkInfo

type NetworkInfo struct {

	// Number of the current epoch in the NeoFS network
	CurrentEpoch uint64 `protobuf:"varint,1,opt,name=current_epoch,json=currentEpoch,proto3" json:"current_epoch,omitempty"`
	// Magic number of FS chain of the NeoFS network
	MagicNumber uint64 `protobuf:"varint,2,opt,name=magic_number,json=magicNumber,proto3" json:"magic_number,omitempty"`
	// MillisecondsPerBlock network parameter of FS chain of the NeoFS network
	MsPerBlock int64 `protobuf:"varint,3,opt,name=ms_per_block,json=msPerBlock,proto3" json:"ms_per_block,omitempty"`
	// NeoFS network configuration
	NetworkConfig *NetworkConfig `protobuf:"bytes,4,opt,name=network_config,json=networkConfig,proto3" json:"network_config,omitempty"`
	// contains filtered or unexported fields
}

Information about NeoFS network

func (*NetworkInfo) Descriptor deprecated

func (*NetworkInfo) Descriptor() ([]byte, []int)

Deprecated: Use NetworkInfo.ProtoReflect.Descriptor instead.

func (*NetworkInfo) GetCurrentEpoch

func (x *NetworkInfo) GetCurrentEpoch() uint64

func (*NetworkInfo) GetMagicNumber

func (x *NetworkInfo) GetMagicNumber() uint64

func (*NetworkInfo) GetMsPerBlock

func (x *NetworkInfo) GetMsPerBlock() int64

func (*NetworkInfo) GetNetworkConfig

func (x *NetworkInfo) GetNetworkConfig() *NetworkConfig

func (*NetworkInfo) MarshalStable

func (x *NetworkInfo) MarshalStable(b []byte)

MarshalStable writes the NetworkInfo in Protocol Buffers V3 format with ascending order of fields by number into b. MarshalStable uses exactly NetworkInfo.MarshaledSize first bytes of b. MarshalStable is NPE-safe.

func (*NetworkInfo) MarshaledSize

func (x *NetworkInfo) MarshaledSize() int

MarshaledSize returns size of the NetworkInfo in Protocol Buffers V3 format in bytes. MarshaledSize is NPE-safe.

func (*NetworkInfo) ProtoMessage

func (*NetworkInfo) ProtoMessage()

func (*NetworkInfo) ProtoReflect

func (x *NetworkInfo) ProtoReflect() protoreflect.Message

func (*NetworkInfo) Reset

func (x *NetworkInfo) Reset()

func (*NetworkInfo) String

func (x *NetworkInfo) String() string

type NetworkInfoRequest

type NetworkInfoRequest struct {

	// Body of the NetworkInfo request message
	Body *NetworkInfoRequest_Body `protobuf:"bytes,1,opt,name=body,proto3" json:"body,omitempty"`
	// Carries request meta information. Header data is used only to regulate
	// message transport and does not affect request execution.
	MetaHeader *session.RequestMetaHeader `protobuf:"bytes,2,opt,name=meta_header,json=metaHeader,proto3" json:"meta_header,omitempty"`
	// Carries request verification information. This header is used to
	// authenticate the nodes of the message route and check the correctness of
	// transmission.
	VerifyHeader *session.RequestVerificationHeader `protobuf:"bytes,3,opt,name=verify_header,json=verifyHeader,proto3" json:"verify_header,omitempty"`
	// contains filtered or unexported fields
}

Get NetworkInfo structure with the network view from a particular node.

func (*NetworkInfoRequest) Descriptor deprecated

func (*NetworkInfoRequest) Descriptor() ([]byte, []int)

Deprecated: Use NetworkInfoRequest.ProtoReflect.Descriptor instead.

func (*NetworkInfoRequest) GetBody

func (*NetworkInfoRequest) GetMetaHeader

func (x *NetworkInfoRequest) GetMetaHeader() *session.RequestMetaHeader

func (*NetworkInfoRequest) GetVerifyHeader

func (*NetworkInfoRequest) ProtoMessage

func (*NetworkInfoRequest) ProtoMessage()

func (*NetworkInfoRequest) ProtoReflect

func (x *NetworkInfoRequest) ProtoReflect() protoreflect.Message

func (*NetworkInfoRequest) Reset

func (x *NetworkInfoRequest) Reset()

func (*NetworkInfoRequest) String

func (x *NetworkInfoRequest) String() string

type NetworkInfoRequest_Body

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

NetworkInfo request body is empty.

func (*NetworkInfoRequest_Body) Descriptor deprecated

func (*NetworkInfoRequest_Body) Descriptor() ([]byte, []int)

Deprecated: Use NetworkInfoRequest_Body.ProtoReflect.Descriptor instead.

func (*NetworkInfoRequest_Body) MarshalStable

func (x *NetworkInfoRequest_Body) MarshalStable([]byte)

MarshalStable writes the NetworkInfoRequest_Body in Protocol Buffers V3 format with ascending order of fields by number into b. MarshalStable uses exactly NetworkInfoRequest_Body.MarshaledSize first bytes of b. MarshalStable is NPE-safe.

func (*NetworkInfoRequest_Body) MarshaledSize

func (x *NetworkInfoRequest_Body) MarshaledSize() int

MarshaledSize returns size of the NetworkInfoRequest_Body in Protocol Buffers V3 format in bytes. MarshaledSize is NPE-safe.

func (*NetworkInfoRequest_Body) ProtoMessage

func (*NetworkInfoRequest_Body) ProtoMessage()

func (*NetworkInfoRequest_Body) ProtoReflect

func (x *NetworkInfoRequest_Body) ProtoReflect() protoreflect.Message

func (*NetworkInfoRequest_Body) Reset

func (x *NetworkInfoRequest_Body) Reset()

func (*NetworkInfoRequest_Body) String

func (x *NetworkInfoRequest_Body) String() string

type NetworkInfoResponse

type NetworkInfoResponse struct {

	// Body of the NetworkInfo response message.
	Body *NetworkInfoResponse_Body `protobuf:"bytes,1,opt,name=body,proto3" json:"body,omitempty"`
	// Carries response meta information. Header data is used only to regulate
	// message transport and does not affect response execution.
	MetaHeader *session.ResponseMetaHeader `protobuf:"bytes,2,opt,name=meta_header,json=metaHeader,proto3" json:"meta_header,omitempty"`
	// Carries response verification information. This header is used to
	// authenticate the nodes of the message route and check the correctness of
	// transmission.
	VerifyHeader *session.ResponseVerificationHeader `protobuf:"bytes,3,opt,name=verify_header,json=verifyHeader,proto3" json:"verify_header,omitempty"`
	// contains filtered or unexported fields
}

Response with NetworkInfo structure including current epoch and FS chain magic number.

func (*NetworkInfoResponse) Descriptor deprecated

func (*NetworkInfoResponse) Descriptor() ([]byte, []int)

Deprecated: Use NetworkInfoResponse.ProtoReflect.Descriptor instead.

func (*NetworkInfoResponse) GetBody

func (*NetworkInfoResponse) GetMetaHeader

func (x *NetworkInfoResponse) GetMetaHeader() *session.ResponseMetaHeader

func (*NetworkInfoResponse) GetVerifyHeader

func (*NetworkInfoResponse) ProtoMessage

func (*NetworkInfoResponse) ProtoMessage()

func (*NetworkInfoResponse) ProtoReflect

func (x *NetworkInfoResponse) ProtoReflect() protoreflect.Message

func (*NetworkInfoResponse) Reset

func (x *NetworkInfoResponse) Reset()

func (*NetworkInfoResponse) String

func (x *NetworkInfoResponse) String() string

type NetworkInfoResponse_Body

type NetworkInfoResponse_Body struct {

	// NetworkInfo structure with recent information.
	NetworkInfo *NetworkInfo `protobuf:"bytes,1,opt,name=network_info,json=networkInfo,proto3" json:"network_info,omitempty"`
	// contains filtered or unexported fields
}

Information about the network.

func (*NetworkInfoResponse_Body) Descriptor deprecated

func (*NetworkInfoResponse_Body) Descriptor() ([]byte, []int)

Deprecated: Use NetworkInfoResponse_Body.ProtoReflect.Descriptor instead.

func (*NetworkInfoResponse_Body) GetNetworkInfo

func (x *NetworkInfoResponse_Body) GetNetworkInfo() *NetworkInfo

func (*NetworkInfoResponse_Body) MarshalStable

func (x *NetworkInfoResponse_Body) MarshalStable(b []byte)

MarshalStable writes the NetworkInfoResponse_Body in Protocol Buffers V3 format with ascending order of fields by number into b. MarshalStable uses exactly NetworkInfoResponse_Body.MarshaledSize first bytes of b. MarshalStable is NPE-safe.

func (*NetworkInfoResponse_Body) MarshaledSize

func (x *NetworkInfoResponse_Body) MarshaledSize() int

MarshaledSize returns size of the NetworkInfoResponse_Body in Protocol Buffers V3 format in bytes. MarshaledSize is NPE-safe.

func (*NetworkInfoResponse_Body) ProtoMessage

func (*NetworkInfoResponse_Body) ProtoMessage()

func (*NetworkInfoResponse_Body) ProtoReflect

func (x *NetworkInfoResponse_Body) ProtoReflect() protoreflect.Message

func (*NetworkInfoResponse_Body) Reset

func (x *NetworkInfoResponse_Body) Reset()

func (*NetworkInfoResponse_Body) String

func (x *NetworkInfoResponse_Body) String() string

type NodeInfo

type NodeInfo struct {

	// Public key of the NeoFS node in a binary format
	PublicKey []byte `protobuf:"bytes,1,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"`
	// Ways to connect to a node
	Addresses []string `protobuf:"bytes,2,rep,name=addresses,proto3" json:"addresses,omitempty"`
	// Carries list of the NeoFS node attributes in a key-value form. Key name
	// must be a node-unique valid UTF-8 string (without zero bytes). Value can't
	// be empty. NodeInfo structures with duplicated attribute names or
	// attributes with empty values will be considered invalid.
	Attributes []*NodeInfo_Attribute `protobuf:"bytes,3,rep,name=attributes,proto3" json:"attributes,omitempty"`
	// Carries state of the NeoFS node
	State NodeInfo_State `protobuf:"varint,4,opt,name=state,proto3,enum=neo.fs.v2.netmap.NodeInfo_State" json:"state,omitempty"`
	// contains filtered or unexported fields
}

NeoFS node description

func (*NodeInfo) Descriptor deprecated

func (*NodeInfo) Descriptor() ([]byte, []int)

Deprecated: Use NodeInfo.ProtoReflect.Descriptor instead.

func (*NodeInfo) GetAddresses

func (x *NodeInfo) GetAddresses() []string

func (*NodeInfo) GetAttributes

func (x *NodeInfo) GetAttributes() []*NodeInfo_Attribute

func (*NodeInfo) GetPublicKey

func (x *NodeInfo) GetPublicKey() []byte

func (*NodeInfo) GetState

func (x *NodeInfo) GetState() NodeInfo_State

func (*NodeInfo) MarshalStable

func (x *NodeInfo) MarshalStable(b []byte)

MarshalStable writes the NodeInfo in Protocol Buffers V3 format with ascending order of fields by number into b. MarshalStable uses exactly NodeInfo.MarshaledSize first bytes of b. MarshalStable is NPE-safe.

func (*NodeInfo) MarshaledSize

func (x *NodeInfo) MarshaledSize() int

MarshaledSize returns size of the NodeInfo in Protocol Buffers V3 format in bytes. MarshaledSize is NPE-safe.

func (*NodeInfo) ProtoMessage

func (*NodeInfo) ProtoMessage()

func (*NodeInfo) ProtoReflect

func (x *NodeInfo) ProtoReflect() protoreflect.Message

func (*NodeInfo) Reset

func (x *NodeInfo) Reset()

func (*NodeInfo) String

func (x *NodeInfo) String() string

type NodeInfo_Attribute

type NodeInfo_Attribute struct {

	// Key of the node attribute
	Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	// Value of the node attribute
	Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
	// Parent keys, if any. For example for `City` it could be `Region` and
	// `Country`.
	Parents []string `protobuf:"bytes,3,rep,name=parents,proto3" json:"parents,omitempty"`
	// contains filtered or unexported fields
}

Administrator-defined Attributes of the NeoFS Storage Node.

`Attribute` is a Key-Value metadata pair. Key name must be a valid UTF-8 string (without zero bytes that are forbidden). Value can't be empty.

Attributes can be constructed into a chain of attributes: any attribute can have a parent attribute and a child attribute (except the first and the last one). A string representation of the chain of attributes in NeoFS Storage Node configuration uses ":" and "/" symbols, e.g.:

`NEOFS_NODE_ATTRIBUTE_1=key1:val1/key2:val2`

Therefore the string attribute representation in the Node configuration must use "\:", "\/" and "\\" escaped symbols if any of them appears in an attribute's key or value.

Node's attributes are mostly used during Storage Policy evaluation to calculate object's placement and find a set of nodes satisfying policy requirements. There are some "well-known" node attributes common to all the Storage Nodes in the network and used implicitly with default values if not explicitly set:

  • Capacity \ Total available disk space in Gigabytes.
  • Price \ Price in GAS tokens for storing one GB of data during one Epoch. In node attributes it's a string presenting floating point number with comma or point delimiter for decimal part. In the Network Map it will be saved as 64-bit unsigned integer representing number of minimal token fractions.
  • __NEOFS__SUBNET_%s \ DEPRECATED. Defined if the node is included in the `%s` subnetwork or not. Currently ignored.
  • UN-LOCODE \ Node's geographic location in UN/LOCODE(https://www.unece.org/cefact/codesfortrade/codes_index.html) format approximated to the nearest point defined in the standard.
  • CountryCode \ Country code in [ISO 3166-1_alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format. Calculated automatically from `UN-LOCODE` attribute.
  • Country \ Country short name in English, as defined in [ISO-3166](https://www.iso.org/obp/ui/#search). Calculated automatically from `UN-LOCODE` attribute.
  • Location \ Place names are given, whenever possible, in their national language versions as expressed in the Roman alphabet using the 26 characters of the character set adopted for international trade data interchange, written without diacritics . Calculated automatically from `UN-LOCODE` attribute.
  • SubDivCode \ Country's administrative subdivision where node is located. Calculated automatically from `UN-LOCODE` attribute based on `SubDiv` field. Presented in [ISO 3166-2](https://en.wikipedia.org/wiki/ISO_3166-2) format.
  • SubDiv \ Country's administrative subdivision name, as defined in [ISO 3166-2](https://en.wikipedia.org/wiki/ISO_3166-2). Calculated automatically from `UN-LOCODE` attribute.
  • Continent \ Node's continent name according to the [Seven-Continent model] (https://en.wikipedia.org/wiki/Continent#Number). Calculated automatically from `UN-LOCODE` attribute.
  • ExternalAddr Node's preferred way for communications with external clients. Clients SHOULD use these addresses if possible. Must contain a comma-separated list of multi-addresses. DEPRECATED. Use 'addresses' field instead.
  • Version Node implementation's version in a free string form.
  • VerifiedNodesDomain Confirmation of admission to a group of storage nodes. The value is the domain name registered in the NeoFS NNS. If attribute is specified, the storage node requesting entry into the NeoFS network map with this attribute must be included in the access list located on the specified domain. The access list is represented by a set of TXT records: Neo addresses resolved from public keys. To be admitted to the network, Neo address of the node's public key declared in 'public_key' field must be present in domain records. Otherwise, registration will be denied. Value must be a valid NeoFS NNS domain name. Note that if this attribute is absent, this check is not carried out.

For detailed description of each well-known attribute please see the corresponding section in NeoFS Technical Specification.

func (*NodeInfo_Attribute) Descriptor deprecated

func (*NodeInfo_Attribute) Descriptor() ([]byte, []int)

Deprecated: Use NodeInfo_Attribute.ProtoReflect.Descriptor instead.

func (*NodeInfo_Attribute) GetKey

func (x *NodeInfo_Attribute) GetKey() string

func (*NodeInfo_Attribute) GetParents

func (x *NodeInfo_Attribute) GetParents() []string

func (*NodeInfo_Attribute) GetValue

func (x *NodeInfo_Attribute) GetValue() string

func (*NodeInfo_Attribute) MarshalStable

func (x *NodeInfo_Attribute) MarshalStable(b []byte)

MarshalStable writes the NodeInfo_Attribute in Protocol Buffers V3 format with ascending order of fields by number into b. MarshalStable uses exactly NodeInfo_Attribute.MarshaledSize first bytes of b. MarshalStable is NPE-safe.

func (*NodeInfo_Attribute) MarshaledSize

func (x *NodeInfo_Attribute) MarshaledSize() int

MarshaledSize returns size of the NodeInfo_Attribute in Protocol Buffers V3 format in bytes. MarshaledSize is NPE-safe.

func (*NodeInfo_Attribute) ProtoMessage

func (*NodeInfo_Attribute) ProtoMessage()

func (*NodeInfo_Attribute) ProtoReflect

func (x *NodeInfo_Attribute) ProtoReflect() protoreflect.Message

func (*NodeInfo_Attribute) Reset

func (x *NodeInfo_Attribute) Reset()

func (*NodeInfo_Attribute) String

func (x *NodeInfo_Attribute) String() string

type NodeInfo_State

type NodeInfo_State int32

Represents the enumeration of various states of the NeoFS node.

const (
	// Unknown state
	NodeInfo_UNSPECIFIED NodeInfo_State = 0
	// Active state in the network
	NodeInfo_ONLINE NodeInfo_State = 1
	// Network unavailable state
	NodeInfo_OFFLINE NodeInfo_State = 2
	// Maintenance state
	NodeInfo_MAINTENANCE NodeInfo_State = 3
)

func (NodeInfo_State) Descriptor

func (NodeInfo_State) Enum

func (x NodeInfo_State) Enum() *NodeInfo_State

func (NodeInfo_State) EnumDescriptor deprecated

func (NodeInfo_State) EnumDescriptor() ([]byte, []int)

Deprecated: Use NodeInfo_State.Descriptor instead.

func (NodeInfo_State) Number

func (NodeInfo_State) String

func (x NodeInfo_State) String() string

func (NodeInfo_State) Type

type Operation

type Operation int32

Operations on filters

const (
	// No Operation defined
	Operation_OPERATION_UNSPECIFIED Operation = 0
	// Equal
	Operation_EQ Operation = 1
	// Not Equal
	Operation_NE Operation = 2
	// Greater then
	Operation_GT Operation = 3
	// Greater or equal
	Operation_GE Operation = 4
	// Less then
	Operation_LT Operation = 5
	// Less or equal
	Operation_LE Operation = 6
	// Logical OR
	Operation_OR Operation = 7
	// Logical AND
	Operation_AND Operation = 8
)

func (Operation) Descriptor

func (Operation) Descriptor() protoreflect.EnumDescriptor

func (Operation) Enum

func (x Operation) Enum() *Operation

func (Operation) EnumDescriptor deprecated

func (Operation) EnumDescriptor() ([]byte, []int)

Deprecated: Use Operation.Descriptor instead.

func (Operation) Number

func (x Operation) Number() protoreflect.EnumNumber

func (Operation) String

func (x Operation) String() string

func (Operation) Type

type PlacementPolicy

type PlacementPolicy struct {

	// Rules to set number of object replicas and place each one into a named
	// bucket. Limited to 256 items.
	Replicas []*Replica `protobuf:"bytes,1,rep,name=replicas,proto3" json:"replicas,omitempty"`
	// Container backup factor (CBF) controls how deep NeoFS will search for
	// alternative nodes to include into container's nodes subset. In total,
	// the number of container nodes is Selector (used by Replica) count
	// times CBF. This number is limited to 64 per-Replica and 512 overall.
	ContainerBackupFactor uint32 `` /* 127-byte string literal not displayed */
	// Set of Selectors to form the container's nodes subset
	Selectors []*Selector `protobuf:"bytes,3,rep,name=selectors,proto3" json:"selectors,omitempty"`
	// List of named filters to reference in selectors
	Filters []*Filter `protobuf:"bytes,4,rep,name=filters,proto3" json:"filters,omitempty"`
	// DEPRECATED. Was used for subnetwork ID to select nodes from, currently
	// ignored.
	//
	// Deprecated: Marked as deprecated in proto/netmap/types.proto.
	SubnetId *refs.SubnetID `protobuf:"bytes,5,opt,name=subnet_id,json=subnetId,proto3" json:"subnet_id,omitempty"`
	// Erasure coding rules. Limited to 4 items.
	EcRules []*PlacementPolicy_ECRule `protobuf:"bytes,6,rep,name=ec_rules,json=ecRules,proto3" json:"ec_rules,omitempty"`
	// contains filtered or unexported fields
}

Set of rules to select a subset of nodes from `NetworkMap` able to store container's objects. The format is simple enough to transpile from different storage policy definition languages.

func (*PlacementPolicy) Descriptor deprecated

func (*PlacementPolicy) Descriptor() ([]byte, []int)

Deprecated: Use PlacementPolicy.ProtoReflect.Descriptor instead.

func (*PlacementPolicy) GetContainerBackupFactor

func (x *PlacementPolicy) GetContainerBackupFactor() uint32

func (*PlacementPolicy) GetEcRules

func (x *PlacementPolicy) GetEcRules() []*PlacementPolicy_ECRule

func (*PlacementPolicy) GetFilters

func (x *PlacementPolicy) GetFilters() []*Filter

func (*PlacementPolicy) GetReplicas

func (x *PlacementPolicy) GetReplicas() []*Replica

func (*PlacementPolicy) GetSelectors

func (x *PlacementPolicy) GetSelectors() []*Selector

func (*PlacementPolicy) GetSubnetId deprecated

func (x *PlacementPolicy) GetSubnetId() *refs.SubnetID

Deprecated: Marked as deprecated in proto/netmap/types.proto.

func (*PlacementPolicy) MarshalStable

func (x *PlacementPolicy) MarshalStable(b []byte)

MarshalStable writes the PlacementPolicy in Protocol Buffers V3 format with ascending order of fields by number into b. MarshalStable uses exactly PlacementPolicy.MarshaledSize first bytes of b. MarshalStable is NPE-safe.

func (*PlacementPolicy) MarshaledSize

func (x *PlacementPolicy) MarshaledSize() int

MarshaledSize returns size of the PlacementPolicy in Protocol Buffers V3 format in bytes. MarshaledSize is NPE-safe.

func (*PlacementPolicy) ProtoMessage

func (*PlacementPolicy) ProtoMessage()

func (*PlacementPolicy) ProtoReflect

func (x *PlacementPolicy) ProtoReflect() protoreflect.Message

func (*PlacementPolicy) Reset

func (x *PlacementPolicy) Reset()

func (*PlacementPolicy) String

func (x *PlacementPolicy) String() string

type PlacementPolicy_ECRule

type PlacementPolicy_ECRule struct {

	// Number of data parts
	DataPartNum uint32 `protobuf:"varint,1,opt,name=data_part_num,json=dataPartNum,proto3" json:"data_part_num,omitempty"`
	// Number of parity parts
	ParityPartNum uint32 `protobuf:"varint,2,opt,name=parity_part_num,json=parityPartNum,proto3" json:"parity_part_num,omitempty"`
	// Name of the linked selector
	Selector string `protobuf:"bytes,3,opt,name=selector,proto3" json:"selector,omitempty"`
	// contains filtered or unexported fields
}

Erasure coding rule for container objects.

For each original object, the payload is split into `data_part_num` data and `parity_part_num` parity parts. Each part is the same size. Data parts contain the original payload. If its length is not divisible by `data_part_num`, the last part is aligned with zero bytes. Both `data_part_num` and `parity_part_num` MUST NOT be zero or exceed 64, including in total. Hashes from all parts are written in the `__NEOFS__EC_PART_HASHES` attribute of the original object's header.

For each payload part, a part object is created. Original object's ID, signature and header is written in `header.split.parent`, `header.split.parent_signature` and `header.split.parent_header` fields correspondingly. Part index is written in the `__NEOFS__EC_PART_IDX` attribute as base-10 integer. Rule index in `PlacementPolicy.ec_rules` list is written in the `__NEOFS__EC_RULE_IDX` attribute as base-10 integer.

Each part object is stored in the container in one copy. Storage nodes are selected from the network map similar to `PlacementPolicy.replicas` rules. Optional `selector` acts the same way. The object for the `i`-th part is placed in the `i`-th node. If it is unavailable, the backup nodes with indexes `m * n + i` (`n = data_part_num + parity_part_num`, `m = 1, ..., CBF-1`). If all nodes for the `i`-th part are unavailable, nodes for the `i+1`-th (0 for the last) part are tried, and so on.

Once part objects are stored in the container, the original object remains available if at least `data_part_num` of any part objects are available. In other words, unavailability (including complete loss) of any of `parity_part_num` part objects does not violate availability of the original one.

Objects of TOMBSTONE and LOCK types are not encoded and stored as they are because they have no payload.

func (*PlacementPolicy_ECRule) Descriptor deprecated

func (*PlacementPolicy_ECRule) Descriptor() ([]byte, []int)

Deprecated: Use PlacementPolicy_ECRule.ProtoReflect.Descriptor instead.

func (*PlacementPolicy_ECRule) GetDataPartNum

func (x *PlacementPolicy_ECRule) GetDataPartNum() uint32

func (*PlacementPolicy_ECRule) GetParityPartNum

func (x *PlacementPolicy_ECRule) GetParityPartNum() uint32

func (*PlacementPolicy_ECRule) GetSelector

func (x *PlacementPolicy_ECRule) GetSelector() string

func (*PlacementPolicy_ECRule) MarshalStable

func (x *PlacementPolicy_ECRule) MarshalStable(b []byte)

MarshalStable writes the PlacementPolicy_ECRule in Protocol Buffers V3 format with ascending order of fields by number into b. MarshalStable uses exactly PlacementPolicy_ECRule.MarshaledSize first bytes of b. MarshalStable is NPE-safe.

func (*PlacementPolicy_ECRule) MarshaledSize

func (x *PlacementPolicy_ECRule) MarshaledSize() int

MarshaledSize returns size of the PlacementPolicy_ECRule in Protocol Buffers V3 format in bytes. MarshaledSize is NPE-safe.

func (*PlacementPolicy_ECRule) ProtoMessage

func (*PlacementPolicy_ECRule) ProtoMessage()

func (*PlacementPolicy_ECRule) ProtoReflect

func (x *PlacementPolicy_ECRule) ProtoReflect() protoreflect.Message

func (*PlacementPolicy_ECRule) Reset

func (x *PlacementPolicy_ECRule) Reset()

func (*PlacementPolicy_ECRule) String

func (x *PlacementPolicy_ECRule) String() string

type Replica

type Replica struct {

	// How many object replicas to put. Limited to 8.
	Count uint32 `protobuf:"varint,1,opt,name=count,proto3" json:"count,omitempty"`
	// Named selector bucket to put replicas
	Selector string `protobuf:"bytes,2,opt,name=selector,proto3" json:"selector,omitempty"`
	// contains filtered or unexported fields
}

Number of object replicas in a set of nodes from the defined selector. If no selector set, the root bucket containing all possible nodes will be used by default.

func (*Replica) Descriptor deprecated

func (*Replica) Descriptor() ([]byte, []int)

Deprecated: Use Replica.ProtoReflect.Descriptor instead.

func (*Replica) GetCount

func (x *Replica) GetCount() uint32

func (*Replica) GetSelector

func (x *Replica) GetSelector() string

func (*Replica) MarshalStable

func (x *Replica) MarshalStable(b []byte)

MarshalStable writes the Replica in Protocol Buffers V3 format with ascending order of fields by number into b. MarshalStable uses exactly Replica.MarshaledSize first bytes of b. MarshalStable is NPE-safe.

func (*Replica) MarshaledSize

func (x *Replica) MarshaledSize() int

MarshaledSize returns size of the Replica in Protocol Buffers V3 format in bytes. MarshaledSize is NPE-safe.

func (*Replica) ProtoMessage

func (*Replica) ProtoMessage()

func (*Replica) ProtoReflect

func (x *Replica) ProtoReflect() protoreflect.Message

func (*Replica) Reset

func (x *Replica) Reset()

func (*Replica) String

func (x *Replica) String() string

type Selector

type Selector struct {

	// Selector name to reference in object placement section
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// How many nodes to select from the bucket
	Count uint32 `protobuf:"varint,2,opt,name=count,proto3" json:"count,omitempty"`
	// Selector modifier showing how to form a bucket
	Clause Clause `protobuf:"varint,3,opt,name=clause,proto3,enum=neo.fs.v2.netmap.Clause" json:"clause,omitempty"`
	// Bucket attribute to select from
	Attribute string `protobuf:"bytes,4,opt,name=attribute,proto3" json:"attribute,omitempty"`
	// Filter reference to select from
	Filter string `protobuf:"bytes,5,opt,name=filter,proto3" json:"filter,omitempty"`
	// contains filtered or unexported fields
}

Selector chooses a number of nodes from the bucket taking the nearest nodes to the provided `ContainerID` by hash distance.

func (*Selector) Descriptor deprecated

func (*Selector) Descriptor() ([]byte, []int)

Deprecated: Use Selector.ProtoReflect.Descriptor instead.

func (*Selector) GetAttribute

func (x *Selector) GetAttribute() string

func (*Selector) GetClause

func (x *Selector) GetClause() Clause

func (*Selector) GetCount

func (x *Selector) GetCount() uint32

func (*Selector) GetFilter

func (x *Selector) GetFilter() string

func (*Selector) GetName

func (x *Selector) GetName() string

func (*Selector) MarshalStable

func (x *Selector) MarshalStable(b []byte)

MarshalStable writes the Selector in Protocol Buffers V3 format with ascending order of fields by number into b. MarshalStable uses exactly Selector.MarshaledSize first bytes of b. MarshalStable is NPE-safe.

func (*Selector) MarshaledSize

func (x *Selector) MarshaledSize() int

MarshaledSize returns size of the Selector in Protocol Buffers V3 format in bytes. MarshaledSize is NPE-safe.

func (*Selector) ProtoMessage

func (*Selector) ProtoMessage()

func (*Selector) ProtoReflect

func (x *Selector) ProtoReflect() protoreflect.Message

func (*Selector) Reset

func (x *Selector) Reset()

func (*Selector) String

func (x *Selector) String() string

type UnimplementedNetmapServiceServer

type UnimplementedNetmapServiceServer struct{}

UnimplementedNetmapServiceServer should be embedded to have forward compatible implementations.

NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.

func (UnimplementedNetmapServiceServer) LocalNodeInfo

func (UnimplementedNetmapServiceServer) NetmapSnapshot

func (UnimplementedNetmapServiceServer) NetworkInfo

type UnsafeNetmapServiceServer

type UnsafeNetmapServiceServer interface {
	// contains filtered or unexported methods
}

UnsafeNetmapServiceServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to NetmapServiceServer will result in compilation errors.

Jump to

Keyboard shortcuts

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