Proto Schema
PSLX uses protobuf to store data. All the schemas are in the folder of schema. In the enums.proto, the following enum types are defined:
ModeType
: whether it is in test mode or production mode.SortOrder
: the order of the children nodes and parent nodes in a node.DataModelType
: the data model type for the containers.InstantMessagingType
: the type of instant messaging app.StorageType
: the type of the storage.ReadRuleType
: the read rule forDefaultStorage
.WriteRuleType
: the write rule forDefaultStorage
andFixedSizeStorage
.PartitionerStorageType
: the type of the partitioner.Status
: status of the operator, container, and RPC response.Signal
: signal for internal usage only.
In rpc.proto, RPC-related message types are defined:
GenericRPCService
: the generic rpc service supported in PSLX.HealthCheckerRequest
: the health checker request.HealthCheckerResponse
: the health checker response.GenericRPCRequest
: generic request that encapsulates the request message in itsAny
field.GenericRPCResponse
: generic response that encapsulates the response message in itsAny
field.GenericRPCRequestResponsePair
: pair of generic request and response.InstantMessagingRPCRequest
: instant messaging rpc request.EmailPRCRequest
: email rpc request.ProtoViewerRPCRequest
: request for proto viewer service.ProtoViewerRPCResponse
: response from proto viewer service.
In snapshots.proto, the snapshots for node, operator and container are defined:
NodeSnapshot
: snapshot for node.OperatorSnapshot
: snapshot for operator.ContainerSnapshot
: snapshot for container.OperatorContentPlain
: a plain text representation for content in operator.OperatorContentList
: a list representation for content in operator. 6:OperatorContentDict
: a dictionary representation for content in operator
In storage.proto, the proto table storage type and the value for the container backend storage are defined:
ProtoTable
: generic storage schema forProtoTableStorage
.ProtoTableIndexMap
: generic format for storing index forShardedProtoTableStorage
.ContainerBackendValue
: the value type for container backend service.
In common.proto, various credential formats are defined:
Credentials
: a specifically designed message to storage credentials.FileInfo
: information about a file.FrontendConfig
: the config for frontend.