Documentation
¶
Index ¶
- Constants
- Variables
- func NewSOWorldOpBlock() block.Block
- type ApplyTxOp
- func (m *ApplyTxOp) CloneMessageVT() protobuf_go_lite.CloneMessage
- func (m *ApplyTxOp) CloneVT() *ApplyTxOp
- func (this *ApplyTxOp) EqualMessageVT(thatMsg any) bool
- func (this *ApplyTxOp) EqualVT(that *ApplyTxOp) bool
- func (x *ApplyTxOp) GetTx() *tx.Tx
- func (x *ApplyTxOp) MarshalJSON() ([]byte, error)
- func (x *ApplyTxOp) MarshalProtoJSON(s *json.MarshalState)
- func (x *ApplyTxOp) MarshalProtoText() string
- func (m *ApplyTxOp) MarshalToSizedBufferVT(dAtA []byte) (int, error)
- func (m *ApplyTxOp) MarshalToVT(dAtA []byte) (int, error)
- func (m *ApplyTxOp) MarshalVT() (dAtA []byte, err error)
- func (*ApplyTxOp) ProtoMessage()
- func (x *ApplyTxOp) Reset()
- func (m *ApplyTxOp) SizeVT() (n int)
- func (x *ApplyTxOp) String() string
- func (x *ApplyTxOp) UnmarshalJSON(b []byte) error
- func (x *ApplyTxOp) UnmarshalProtoJSON(s *json.UnmarshalState)
- func (m *ApplyTxOp) UnmarshalVT(dAtA []byte) error
- type Config
- func (m *Config) CloneMessageVT() protobuf_go_lite.CloneMessage
- func (m *Config) CloneVT() *Config
- func (this *Config) EqualMessageVT(thatMsg any) bool
- func (this *Config) EqualVT(that *Config) bool
- func (c *Config) EqualsConfig(other config.Config) bool
- func (c *Config) GetConfigID() string
- func (x *Config) GetDisableApplyObjectOp() bool
- func (x *Config) GetDisableApplyWorldOp() bool
- func (x *Config) GetDisableLookup() bool
- func (x *Config) GetEngineId() string
- func (x *Config) GetGcSweepBackstopIntervalDur() uint64
- func (x *Config) GetGcSweepIdleWindowDur() uint64
- func (x *Config) GetInitWorldOp() *InitWorldOp
- func (x *Config) GetProcessOpsBackoff() *backoff.Backoff
- func (x *Config) GetRef() *sobject.SharedObjectRef
- func (x *Config) GetVerbose() bool
- func (x *Config) MarshalJSON() ([]byte, error)
- func (x *Config) MarshalProtoJSON(s *json.MarshalState)
- func (x *Config) MarshalProtoText() string
- func (m *Config) MarshalToSizedBufferVT(dAtA []byte) (int, error)
- func (m *Config) MarshalToVT(dAtA []byte) (int, error)
- func (m *Config) MarshalVT() (dAtA []byte, err error)
- func (*Config) ProtoMessage()
- func (x *Config) Reset()
- func (m *Config) SizeVT() (n int)
- func (x *Config) String() string
- func (x *Config) UnmarshalJSON(b []byte) error
- func (x *Config) UnmarshalProtoJSON(s *json.UnmarshalState)
- func (m *Config) UnmarshalVT(dAtA []byte) error
- func (c *Config) Validate() error
- type Controller
- func (c *Controller) Close() error
- func (c *Controller) Execute(ctx context.Context) error
- func (c *Controller) GetControllerInfo() *controller.Info
- func (c *Controller) GetWorldEngine(ctx context.Context) (Engine, error)
- func (c *Controller) HandleDirective(ctx context.Context, di directive.Instance) ([]directive.Resolver, error)
- func (c *Controller) SetStaticLookupOp(lookupOp world.LookupOp)
- type Engine
- type Factory
- func (t *Factory) Construct(ctx context.Context, conf config.Config, opts controller.ConstructOpts) (controller.Controller, error)
- func (t *Factory) ConstructConfig() config.Config
- func (t *Factory) GetConfigID() string
- func (t *Factory) GetControllerID() string
- func (t *Factory) GetVersion() controller.Version
- type InitWorldOp
- func (m *InitWorldOp) CloneMessageVT() protobuf_go_lite.CloneMessage
- func (m *InitWorldOp) CloneVT() *InitWorldOp
- func (this *InitWorldOp) EqualMessageVT(thatMsg any) bool
- func (this *InitWorldOp) EqualVT(that *InitWorldOp) bool
- func (x *InitWorldOp) GetLastChangeDisable() bool
- func (x *InitWorldOp) GetTransformConf() *transform.Config
- func (x *InitWorldOp) MarshalJSON() ([]byte, error)
- func (x *InitWorldOp) MarshalProtoJSON(s *json.MarshalState)
- func (x *InitWorldOp) MarshalProtoText() string
- func (m *InitWorldOp) MarshalToSizedBufferVT(dAtA []byte) (int, error)
- func (m *InitWorldOp) MarshalToVT(dAtA []byte) (int, error)
- func (m *InitWorldOp) MarshalVT() (dAtA []byte, err error)
- func (*InitWorldOp) ProtoMessage()
- func (x *InitWorldOp) Reset()
- func (m *InitWorldOp) SizeVT() (n int)
- func (x *InitWorldOp) String() string
- func (x *InitWorldOp) UnmarshalJSON(b []byte) error
- func (x *InitWorldOp) UnmarshalProtoJSON(s *json.UnmarshalState)
- func (m *InitWorldOp) UnmarshalVT(dAtA []byte) error
- func (i *InitWorldOp) Validate() error
- type InnerState
- func (m *InnerState) CloneMessageVT() protobuf_go_lite.CloneMessage
- func (m *InnerState) CloneVT() *InnerState
- func (this *InnerState) EqualMessageVT(thatMsg any) bool
- func (this *InnerState) EqualVT(that *InnerState) bool
- func (x *InnerState) GetHeadRef() *bucket.ObjectRef
- func (x *InnerState) MarshalJSON() ([]byte, error)
- func (x *InnerState) MarshalProtoJSON(s *json.MarshalState)
- func (x *InnerState) MarshalProtoText() string
- func (m *InnerState) MarshalToSizedBufferVT(dAtA []byte) (int, error)
- func (m *InnerState) MarshalToVT(dAtA []byte) (int, error)
- func (m *InnerState) MarshalVT() (dAtA []byte, err error)
- func (*InnerState) ProtoMessage()
- func (x *InnerState) Reset()
- func (m *InnerState) SizeVT() (n int)
- func (x *InnerState) String() string
- func (x *InnerState) UnmarshalJSON(b []byte) error
- func (x *InnerState) UnmarshalProtoJSON(s *json.UnmarshalState)
- func (m *InnerState) UnmarshalVT(dAtA []byte) error
- type SOWorldOp
- func (m *SOWorldOp) CloneMessageVT() protobuf_go_lite.CloneMessage
- func (m *SOWorldOp) CloneVT() *SOWorldOp
- func (this *SOWorldOp) EqualMessageVT(thatMsg any) bool
- func (this *SOWorldOp) EqualVT(that *SOWorldOp) bool
- func (x *SOWorldOp) GetApplyTxOp() *ApplyTxOp
- func (m *SOWorldOp) GetBody() isSOWorldOp_Body
- func (x *SOWorldOp) GetInitWorld() *InitWorldOp
- func (o *SOWorldOp) MarshalBlock() ([]byte, error)
- func (x *SOWorldOp) MarshalJSON() ([]byte, error)
- func (x *SOWorldOp) MarshalProtoJSON(s *json.MarshalState)
- func (x *SOWorldOp) MarshalProtoText() string
- func (m *SOWorldOp) MarshalToSizedBufferVT(dAtA []byte) (int, error)
- func (m *SOWorldOp) MarshalToVT(dAtA []byte) (int, error)
- func (m *SOWorldOp) MarshalVT() (dAtA []byte, err error)
- func (*SOWorldOp) ProtoMessage()
- func (x *SOWorldOp) Reset()
- func (m *SOWorldOp) SizeVT() (n int)
- func (x *SOWorldOp) String() string
- func (o *SOWorldOp) UnmarshalBlock(data []byte) error
- func (x *SOWorldOp) UnmarshalJSON(b []byte) error
- func (x *SOWorldOp) UnmarshalProtoJSON(s *json.UnmarshalState)
- func (m *SOWorldOp) UnmarshalVT(dAtA []byte) error
- type SOWorldOp_ApplyTxOp
- func (m *SOWorldOp_ApplyTxOp) CloneOneofVT() isSOWorldOp_Body
- func (m *SOWorldOp_ApplyTxOp) CloneVT() *SOWorldOp_ApplyTxOp
- func (this *SOWorldOp_ApplyTxOp) EqualVT(thatIface isSOWorldOp_Body) bool
- func (m *SOWorldOp_ApplyTxOp) MarshalToSizedBufferVT(dAtA []byte) (int, error)
- func (m *SOWorldOp_ApplyTxOp) MarshalToVT(dAtA []byte) (int, error)
- func (m *SOWorldOp_ApplyTxOp) SizeVT() (n int)
- type SOWorldOp_InitWorld
- func (m *SOWorldOp_InitWorld) CloneOneofVT() isSOWorldOp_Body
- func (m *SOWorldOp_InitWorld) CloneVT() *SOWorldOp_InitWorld
- func (this *SOWorldOp_InitWorld) EqualVT(thatIface isSOWorldOp_Body) bool
- func (m *SOWorldOp_InitWorld) MarshalToSizedBufferVT(dAtA []byte) (int, error)
- func (m *SOWorldOp_InitWorld) MarshalToVT(dAtA []byte) (int, error)
- func (m *SOWorldOp_InitWorld) SizeVT() (n int)
- type SpaceWorldFinalizationDecision
- func (m *SpaceWorldFinalizationDecision) CloneMessageVT() protobuf_go_lite.CloneMessage
- func (m *SpaceWorldFinalizationDecision) CloneVT() *SpaceWorldFinalizationDecision
- func (this *SpaceWorldFinalizationDecision) EqualMessageVT(thatMsg any) bool
- func (this *SpaceWorldFinalizationDecision) EqualVT(that *SpaceWorldFinalizationDecision) bool
- func (x *SpaceWorldFinalizationDecision) GetAcceptedSharedObjectRoot() *sobject.SORoot
- func (x *SpaceWorldFinalizationDecision) GetAcceptedWorldRoot() *bucket.ObjectRef
- func (x *SpaceWorldFinalizationDecision) GetError() string
- func (x *SpaceWorldFinalizationDecision) GetLocalOperationId() string
- func (x *SpaceWorldFinalizationDecision) GetRetryable() bool
- func (x *SpaceWorldFinalizationDecision) GetStatus() SpaceWorldFinalizationStatus
- func (x *SpaceWorldFinalizationDecision) MarshalJSON() ([]byte, error)
- func (x *SpaceWorldFinalizationDecision) MarshalProtoJSON(s *json.MarshalState)
- func (x *SpaceWorldFinalizationDecision) MarshalProtoText() string
- func (m *SpaceWorldFinalizationDecision) MarshalToSizedBufferVT(dAtA []byte) (int, error)
- func (m *SpaceWorldFinalizationDecision) MarshalToVT(dAtA []byte) (int, error)
- func (m *SpaceWorldFinalizationDecision) MarshalVT() (dAtA []byte, err error)
- func (*SpaceWorldFinalizationDecision) ProtoMessage()
- func (x *SpaceWorldFinalizationDecision) Reset()
- func (m *SpaceWorldFinalizationDecision) SizeVT() (n int)
- func (x *SpaceWorldFinalizationDecision) String() string
- func (x *SpaceWorldFinalizationDecision) UnmarshalJSON(b []byte) error
- func (x *SpaceWorldFinalizationDecision) UnmarshalProtoJSON(s *json.UnmarshalState)
- func (m *SpaceWorldFinalizationDecision) UnmarshalVT(dAtA []byte) error
- func (d *SpaceWorldFinalizationDecision) Validate() error
- type SpaceWorldFinalizationPacket
- func (m *SpaceWorldFinalizationPacket) CloneMessageVT() protobuf_go_lite.CloneMessage
- func (m *SpaceWorldFinalizationPacket) CloneVT() *SpaceWorldFinalizationPacket
- func (this *SpaceWorldFinalizationPacket) EqualMessageVT(thatMsg any) bool
- func (this *SpaceWorldFinalizationPacket) EqualVT(that *SpaceWorldFinalizationPacket) bool
- func (x *SpaceWorldFinalizationPacket) GetAuthorityEpoch() uint64
- func (x *SpaceWorldFinalizationPacket) GetBaseSharedObjectRoot() *sobject.SORoot
- func (x *SpaceWorldFinalizationPacket) GetBaseWorldRoot() *bucket.ObjectRef
- func (x *SpaceWorldFinalizationPacket) GetBlocksAvailable() bool
- func (x *SpaceWorldFinalizationPacket) GetCandidateContentId() []byte
- func (x *SpaceWorldFinalizationPacket) GetCandidateWorldRoot() *bucket.ObjectRef
- func (x *SpaceWorldFinalizationPacket) GetFollowerParticipantId() string
- func (x *SpaceWorldFinalizationPacket) GetLocalOperationId() string
- func (x *SpaceWorldFinalizationPacket) GetOp() *SOWorldOp
- func (x *SpaceWorldFinalizationPacket) GetStorageGeneration() uint64
- func (x *SpaceWorldFinalizationPacket) MarshalJSON() ([]byte, error)
- func (x *SpaceWorldFinalizationPacket) MarshalProtoJSON(s *json.MarshalState)
- func (x *SpaceWorldFinalizationPacket) MarshalProtoText() string
- func (m *SpaceWorldFinalizationPacket) MarshalToSizedBufferVT(dAtA []byte) (int, error)
- func (m *SpaceWorldFinalizationPacket) MarshalToVT(dAtA []byte) (int, error)
- func (m *SpaceWorldFinalizationPacket) MarshalVT() (dAtA []byte, err error)
- func (*SpaceWorldFinalizationPacket) ProtoMessage()
- func (x *SpaceWorldFinalizationPacket) Reset()
- func (m *SpaceWorldFinalizationPacket) SizeVT() (n int)
- func (x *SpaceWorldFinalizationPacket) String() string
- func (x *SpaceWorldFinalizationPacket) UnmarshalJSON(b []byte) error
- func (x *SpaceWorldFinalizationPacket) UnmarshalProtoJSON(s *json.UnmarshalState)
- func (m *SpaceWorldFinalizationPacket) UnmarshalVT(dAtA []byte) error
- func (p *SpaceWorldFinalizationPacket) Validate() error
- type SpaceWorldFinalizationStatus
- func (x SpaceWorldFinalizationStatus) Enum() *SpaceWorldFinalizationStatus
- func (x SpaceWorldFinalizationStatus) MarshalJSON() ([]byte, error)
- func (x SpaceWorldFinalizationStatus) MarshalProtoJSON(s *json.MarshalState)
- func (x SpaceWorldFinalizationStatus) MarshalProtoText() string
- func (x SpaceWorldFinalizationStatus) MarshalText() ([]byte, error)
- func (x SpaceWorldFinalizationStatus) String() string
- func (x *SpaceWorldFinalizationStatus) UnmarshalJSON(b []byte) error
- func (x *SpaceWorldFinalizationStatus) UnmarshalProtoJSON(s *json.UnmarshalState)
- func (x *SpaceWorldFinalizationStatus) UnmarshalText(b []byte) error
- type SpaceWorldRejectedCandidate
- func (m *SpaceWorldRejectedCandidate) CloneMessageVT() protobuf_go_lite.CloneMessage
- func (m *SpaceWorldRejectedCandidate) CloneVT() *SpaceWorldRejectedCandidate
- func (this *SpaceWorldRejectedCandidate) EqualMessageVT(thatMsg any) bool
- func (this *SpaceWorldRejectedCandidate) EqualVT(that *SpaceWorldRejectedCandidate) bool
- func (x *SpaceWorldRejectedCandidate) GetDecision() *SpaceWorldFinalizationDecision
- func (x *SpaceWorldRejectedCandidate) GetPacket() *SpaceWorldFinalizationPacket
- func (x *SpaceWorldRejectedCandidate) GetRetainedUnixNano() uint64
- func (x *SpaceWorldRejectedCandidate) MarshalJSON() ([]byte, error)
- func (x *SpaceWorldRejectedCandidate) MarshalProtoJSON(s *json.MarshalState)
- func (x *SpaceWorldRejectedCandidate) MarshalProtoText() string
- func (m *SpaceWorldRejectedCandidate) MarshalToSizedBufferVT(dAtA []byte) (int, error)
- func (m *SpaceWorldRejectedCandidate) MarshalToVT(dAtA []byte) (int, error)
- func (m *SpaceWorldRejectedCandidate) MarshalVT() (dAtA []byte, err error)
- func (*SpaceWorldRejectedCandidate) ProtoMessage()
- func (x *SpaceWorldRejectedCandidate) Reset()
- func (m *SpaceWorldRejectedCandidate) SizeVT() (n int)
- func (x *SpaceWorldRejectedCandidate) String() string
- func (x *SpaceWorldRejectedCandidate) UnmarshalJSON(b []byte) error
- func (x *SpaceWorldRejectedCandidate) UnmarshalProtoJSON(s *json.UnmarshalState)
- func (m *SpaceWorldRejectedCandidate) UnmarshalVT(dAtA []byte) error
Constants ¶
const ConfigID = ControllerID
ConfigID is the string used to identify this config object.
const ControllerID = "sobject/world/engine"
ControllerID identifies the block graph engine controller.
Variables ¶
var ( SpaceWorldFinalizationStatus_name = map[int32]string{ 0: "SPACE_WORLD_FINALIZATION_STATUS_UNKNOWN", 1: "SPACE_WORLD_FINALIZATION_STATUS_ACCEPTED", 2: "SPACE_WORLD_FINALIZATION_STATUS_REJECTED", 3: "SPACE_WORLD_FINALIZATION_STATUS_STALE_BASE", 4: "SPACE_WORLD_FINALIZATION_STATUS_MISSING_BLOCK", 5: "SPACE_WORLD_FINALIZATION_STATUS_LOST_AUTHORITY", } SpaceWorldFinalizationStatus_value = map[string]int32{ "SPACE_WORLD_FINALIZATION_STATUS_UNKNOWN": 0, "SPACE_WORLD_FINALIZATION_STATUS_ACCEPTED": 1, "SPACE_WORLD_FINALIZATION_STATUS_REJECTED": 2, "SPACE_WORLD_FINALIZATION_STATUS_STALE_BASE": 3, "SPACE_WORLD_FINALIZATION_STATUS_MISSING_BLOCK": 4, "SPACE_WORLD_FINALIZATION_STATUS_LOST_AUTHORITY": 5, } )
Enum value maps for SpaceWorldFinalizationStatus.
var Version = controller.MustParseVersion("0.0.1")
Version is the controller version.
Functions ¶
func NewSOWorldOpBlock ¶
NewSOWorldOpBlock constructs a new SOWorldOp block.
Types ¶
type ApplyTxOp ¶
type ApplyTxOp struct {
// tx is the tx or tx batch to apply
Tx *tx.Tx `protobuf:"bytes,1,opt,name=tx,proto3" json:"tx,omitempty"`
// contains filtered or unexported fields
}
ApplyTxOp is the operation to apply a world transaction.
func (*ApplyTxOp) CloneMessageVT ¶
func (m *ApplyTxOp) CloneMessageVT() protobuf_go_lite.CloneMessage
func (*ApplyTxOp) EqualMessageVT ¶
func (*ApplyTxOp) MarshalJSON ¶
MarshalJSON marshals the ApplyTxOp to JSON.
func (*ApplyTxOp) MarshalProtoJSON ¶
func (x *ApplyTxOp) MarshalProtoJSON(s *json.MarshalState)
MarshalProtoJSON marshals the ApplyTxOp message to JSON.
func (*ApplyTxOp) MarshalProtoText ¶
func (*ApplyTxOp) MarshalToSizedBufferVT ¶
func (*ApplyTxOp) ProtoMessage ¶
func (*ApplyTxOp) ProtoMessage()
func (*ApplyTxOp) UnmarshalJSON ¶
UnmarshalJSON unmarshals the ApplyTxOp from JSON.
func (*ApplyTxOp) UnmarshalProtoJSON ¶
func (x *ApplyTxOp) UnmarshalProtoJSON(s *json.UnmarshalState)
UnmarshalProtoJSON unmarshals the ApplyTxOp message from JSON.
func (*ApplyTxOp) UnmarshalVT ¶
type Config ¶
type Config struct {
// EngineId is the identifier used to look up the world on the bus.
// Used to match & resolve WorldEngine directives.
// If empty, LookupWorldEngine will not be processed.
EngineId string `protobuf:"bytes,1,opt,name=engine_id,json=engineId,proto3" json:"engineId,omitempty"`
// Ref is the shared object ref.
Ref *sobject.SharedObjectRef `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
// InitWorldOp overrides the contents of the InitWorldOp when initializing the world.
// Only used if the shared object is empty.
InitWorldOp *InitWorldOp `protobuf:"bytes,3,opt,name=init_world_op,json=initWorldOp,proto3" json:"initWorldOp,omitempty"`
// DisableLookup disables looking up anything on the bus via directives.
// Implies both DisableApplyWorldOp and DisableApplyObjectOp.
DisableLookup bool `protobuf:"varint,4,opt,name=disable_lookup,json=disableLookup,proto3" json:"disableLookup,omitempty"`
// DisableApplyWorldOp disables calling the ApplyWorldOp directive.
DisableApplyWorldOp bool `protobuf:"varint,5,opt,name=disable_apply_world_op,json=disableApplyWorldOp,proto3" json:"disableApplyWorldOp,omitempty"`
// DisableApplyObjectOp disables calling the ApplyObjectOp directive.
DisableApplyObjectOp bool `protobuf:"varint,6,opt,name=disable_apply_object_op,json=disableApplyObjectOp,proto3" json:"disableApplyObjectOp,omitempty"`
// Verbose logs all operation results as debug messages.
Verbose bool `protobuf:"varint,7,opt,name=verbose,proto3" json:"verbose,omitempty"`
// ProcessOpsBackoff is the backoff for processing ops as a validator.
// Defaults to reasonable defaults if unset.
ProcessOpsBackoff *backoff.Backoff `protobuf:"bytes,8,opt,name=process_ops_backoff,json=processOpsBackoff,proto3" json:"processOpsBackoff,omitempty"`
// GcSweepIdleWindowDur is the idle window duration after the last write
// before a GC sweep is triggered if garbage exists.
// Duration in nanoseconds. If zero, defaults to 5 seconds.
GcSweepIdleWindowDur uint64 `protobuf:"varint,9,opt,name=gc_sweep_idle_window_dur,json=gcSweepIdleWindowDur,proto3" json:"gcSweepIdleWindowDur,omitempty"`
// GcSweepBackstopIntervalDur is the periodic backstop interval for GC sweeps.
// Duration in nanoseconds. If zero, defaults to 5 minutes.
GcSweepBackstopIntervalDur uint64 `` /* 143-byte string literal not displayed */
// contains filtered or unexported fields
}
Config configures a World Graph engine bound to a block graph and controlled by a Shared Object. Uses MountSharedObject to mount and access the shared object and block store. Stores the HEAD reference in the Shared Object.
func NewConfig ¶
func NewConfig(engineID string, ref *sobject.SharedObjectRef) *Config
NewConfig constructs a new block world engine config.
func (*Config) CloneMessageVT ¶
func (m *Config) CloneMessageVT() protobuf_go_lite.CloneMessage
func (*Config) EqualMessageVT ¶
func (*Config) EqualsConfig ¶
EqualsConfig checks if the config is equal to another.
func (*Config) GetConfigID ¶
GetConfigID returns the unique string for this configuration type. This string is stored with the encoded config.
func (*Config) GetDisableApplyObjectOp ¶
func (*Config) GetDisableApplyWorldOp ¶
func (*Config) GetDisableLookup ¶
func (*Config) GetEngineId ¶
func (*Config) GetGcSweepBackstopIntervalDur ¶
func (*Config) GetGcSweepIdleWindowDur ¶
func (*Config) GetInitWorldOp ¶
func (x *Config) GetInitWorldOp() *InitWorldOp
func (*Config) GetProcessOpsBackoff ¶
func (*Config) GetRef ¶
func (x *Config) GetRef() *sobject.SharedObjectRef
func (*Config) GetVerbose ¶
func (*Config) MarshalJSON ¶
MarshalJSON marshals the Config to JSON.
func (*Config) MarshalProtoJSON ¶
func (x *Config) MarshalProtoJSON(s *json.MarshalState)
MarshalProtoJSON marshals the Config message to JSON.
func (*Config) MarshalProtoText ¶
func (*Config) MarshalToSizedBufferVT ¶
func (*Config) ProtoMessage ¶
func (*Config) ProtoMessage()
func (*Config) UnmarshalJSON ¶
UnmarshalJSON unmarshals the Config from JSON.
func (*Config) UnmarshalProtoJSON ¶
func (x *Config) UnmarshalProtoJSON(s *json.UnmarshalState)
UnmarshalProtoJSON unmarshals the Config message from JSON.
func (*Config) UnmarshalVT ¶
type Controller ¶
type Controller struct {
// contains filtered or unexported fields
}
Controller drives a World Graph engine bound to a block graph and controlled by a Shared Object. Uses MountSharedObject to mount and access the shared object and block store. Stores the HEAD reference in the Shared Object.
func NewController ¶
func NewController( le *logrus.Entry, bus bus.Bus, conf *Config, sfs *block_transform.StepFactorySet, ) (*Controller, error)
NewController constructs a new World Engine controller.
func StartEngineWithConfig ¶
func StartEngineWithConfig( ctx context.Context, b bus.Bus, conf *Config, rel func(), ) (*Controller, directive.Instance, directive.Reference, error)
StartEngineWithConfig starts the sobject world engine with a config. Waits for the controller to start. Returns a Release function to close the controller when done.
func (*Controller) Close ¶
func (c *Controller) Close() error
Close releases any resources used by the controller. Error indicates any issue encountered releasing.
func (*Controller) Execute ¶
func (c *Controller) Execute(ctx context.Context) error
Execute executes the engine controller. Returning nil ends execution. Returning an error triggers a retry with backoff.
func (*Controller) GetControllerInfo ¶
func (c *Controller) GetControllerInfo() *controller.Info
GetControllerInfo returns information about the controller.
func (*Controller) GetWorldEngine ¶
func (c *Controller) GetWorldEngine(ctx context.Context) (Engine, error)
GetWorldEngine waits for the engine to be built. Returns the Engine managed by the controller.
func (*Controller) HandleDirective ¶
func (c *Controller) HandleDirective(ctx context.Context, di directive.Instance) ([]directive.Resolver, error)
HandleDirective asks if the handler can resolve the directive.
func (*Controller) SetStaticLookupOp ¶ added in v0.52.0
func (c *Controller) SetStaticLookupOp(lookupOp world.LookupOp)
SetStaticLookupOp sets an in-process world operation lookup chain for this engine. It is composed before the bus lookup, so domain-owned built-ins do not depend on an outer controller lifecycle.
type Factory ¶
type Factory struct {
// contains filtered or unexported fields
}
Factory constructs a world engine controller
func NewFactory ¶
NewFactory builds a world block engine factory.
func (*Factory) Construct ¶
func (t *Factory) Construct( ctx context.Context, conf config.Config, opts controller.ConstructOpts, ) (controller.Controller, error)
Construct constructs the associated controller given configuration.
func (*Factory) ConstructConfig ¶
ConstructConfig constructs an instance of the controller configuration.
func (*Factory) GetConfigID ¶
GetConfigID returns the configuration ID for the controller.
func (*Factory) GetControllerID ¶
GetControllerID returns the unique ID for the controller.
func (*Factory) GetVersion ¶
func (t *Factory) GetVersion() controller.Version
GetVersion returns the version of this controller.
type InitWorldOp ¶
type InitWorldOp struct {
// LastChangeDisable indicates the changelog is disabled for this world.
// If set, last_change will be empty, except for the seqno field.
// NOTE: the seqno field will not be empty on LastChange.
LastChangeDisable bool `protobuf:"varint,1,opt,name=last_change_disable,json=lastChangeDisable,proto3" json:"lastChangeDisable,omitempty"`
// TransformConf is the transform configuration to use for the world.
// If unset, a default transform config with a random key will be generated.
TransformConf *transform.Config `protobuf:"bytes,2,opt,name=transform_conf,json=transformConf,proto3" json:"transformConf,omitempty"`
// contains filtered or unexported fields
}
InitWorldOp is the operation to initialize the inner state.
func (*InitWorldOp) CloneMessageVT ¶
func (m *InitWorldOp) CloneMessageVT() protobuf_go_lite.CloneMessage
func (*InitWorldOp) CloneVT ¶
func (m *InitWorldOp) CloneVT() *InitWorldOp
func (*InitWorldOp) EqualMessageVT ¶
func (this *InitWorldOp) EqualMessageVT(thatMsg any) bool
func (*InitWorldOp) EqualVT ¶
func (this *InitWorldOp) EqualVT(that *InitWorldOp) bool
func (*InitWorldOp) GetLastChangeDisable ¶
func (x *InitWorldOp) GetLastChangeDisable() bool
func (*InitWorldOp) GetTransformConf ¶
func (x *InitWorldOp) GetTransformConf() *transform.Config
func (*InitWorldOp) MarshalJSON ¶
func (x *InitWorldOp) MarshalJSON() ([]byte, error)
MarshalJSON marshals the InitWorldOp to JSON.
func (*InitWorldOp) MarshalProtoJSON ¶
func (x *InitWorldOp) MarshalProtoJSON(s *json.MarshalState)
MarshalProtoJSON marshals the InitWorldOp message to JSON.
func (*InitWorldOp) MarshalProtoText ¶
func (x *InitWorldOp) MarshalProtoText() string
func (*InitWorldOp) MarshalToSizedBufferVT ¶
func (m *InitWorldOp) MarshalToSizedBufferVT(dAtA []byte) (int, error)
func (*InitWorldOp) MarshalToVT ¶
func (m *InitWorldOp) MarshalToVT(dAtA []byte) (int, error)
func (*InitWorldOp) MarshalVT ¶
func (m *InitWorldOp) MarshalVT() (dAtA []byte, err error)
func (*InitWorldOp) ProtoMessage ¶
func (*InitWorldOp) ProtoMessage()
func (*InitWorldOp) Reset ¶
func (x *InitWorldOp) Reset()
func (*InitWorldOp) SizeVT ¶
func (m *InitWorldOp) SizeVT() (n int)
func (*InitWorldOp) String ¶
func (x *InitWorldOp) String() string
func (*InitWorldOp) UnmarshalJSON ¶
func (x *InitWorldOp) UnmarshalJSON(b []byte) error
UnmarshalJSON unmarshals the InitWorldOp from JSON.
func (*InitWorldOp) UnmarshalProtoJSON ¶
func (x *InitWorldOp) UnmarshalProtoJSON(s *json.UnmarshalState)
UnmarshalProtoJSON unmarshals the InitWorldOp message from JSON.
func (*InitWorldOp) UnmarshalVT ¶
func (m *InitWorldOp) UnmarshalVT(dAtA []byte) error
func (*InitWorldOp) Validate ¶
func (i *InitWorldOp) Validate() error
Validate validates the InitWorldOp configuration.
type InnerState ¶
type InnerState struct {
// HeadRef is the most recent reference to the world state.
// Includes the in-line transform config w/ crypto key.
// The bucket ID will be overridden when loaded.
// The bucket ID should be set to empty.
// The object referenced is a .world.block.World block.
HeadRef *bucket.ObjectRef `protobuf:"bytes,1,opt,name=head_ref,json=headRef,proto3" json:"headRef,omitempty"`
// contains filtered or unexported fields
}
InnerState contains the inner state object for the SharedObject. Note that the SharedObject inner state thas a very small size limit.
func BuildInitialInnerState ¶ added in v0.51.2
func BuildInitialInnerState(initOp *InitWorldOp) (*InnerState, error)
BuildInitialInnerState builds the initialized empty world state.
func (*InnerState) CloneMessageVT ¶
func (m *InnerState) CloneMessageVT() protobuf_go_lite.CloneMessage
func (*InnerState) CloneVT ¶
func (m *InnerState) CloneVT() *InnerState
func (*InnerState) EqualMessageVT ¶
func (this *InnerState) EqualMessageVT(thatMsg any) bool
func (*InnerState) EqualVT ¶
func (this *InnerState) EqualVT(that *InnerState) bool
func (*InnerState) GetHeadRef ¶
func (x *InnerState) GetHeadRef() *bucket.ObjectRef
func (*InnerState) MarshalJSON ¶
func (x *InnerState) MarshalJSON() ([]byte, error)
MarshalJSON marshals the InnerState to JSON.
func (*InnerState) MarshalProtoJSON ¶
func (x *InnerState) MarshalProtoJSON(s *json.MarshalState)
MarshalProtoJSON marshals the InnerState message to JSON.
func (*InnerState) MarshalProtoText ¶
func (x *InnerState) MarshalProtoText() string
func (*InnerState) MarshalToSizedBufferVT ¶
func (m *InnerState) MarshalToSizedBufferVT(dAtA []byte) (int, error)
func (*InnerState) MarshalToVT ¶
func (m *InnerState) MarshalToVT(dAtA []byte) (int, error)
func (*InnerState) MarshalVT ¶
func (m *InnerState) MarshalVT() (dAtA []byte, err error)
func (*InnerState) ProtoMessage ¶
func (*InnerState) ProtoMessage()
func (*InnerState) Reset ¶
func (x *InnerState) Reset()
func (*InnerState) SizeVT ¶
func (m *InnerState) SizeVT() (n int)
func (*InnerState) String ¶
func (x *InnerState) String() string
func (*InnerState) UnmarshalJSON ¶
func (x *InnerState) UnmarshalJSON(b []byte) error
UnmarshalJSON unmarshals the InnerState from JSON.
func (*InnerState) UnmarshalProtoJSON ¶
func (x *InnerState) UnmarshalProtoJSON(s *json.UnmarshalState)
UnmarshalProtoJSON unmarshals the InnerState message from JSON.
func (*InnerState) UnmarshalVT ¶
func (m *InnerState) UnmarshalVT(dAtA []byte) error
type SOWorldOp ¶
type SOWorldOp struct {
// Body is the body of the operation.
//
// Types that are assignable to Body:
//
// *SOWorldOp_InitWorld
// *SOWorldOp_ApplyTxOp
Body isSOWorldOp_Body `protobuf_oneof:"body"`
// contains filtered or unexported fields
}
SOWorldOp is the outer wrapper for a shared object operation against a world InnerState.
func (*SOWorldOp) CloneMessageVT ¶
func (m *SOWorldOp) CloneMessageVT() protobuf_go_lite.CloneMessage
func (*SOWorldOp) EqualMessageVT ¶
func (*SOWorldOp) GetApplyTxOp ¶
func (*SOWorldOp) GetInitWorld ¶
func (x *SOWorldOp) GetInitWorld() *InitWorldOp
func (*SOWorldOp) MarshalBlock ¶
MarshalBlock marshals the block to binary. This is the initial step of marshaling, before transformations.
func (*SOWorldOp) MarshalJSON ¶
MarshalJSON marshals the SOWorldOp to JSON.
func (*SOWorldOp) MarshalProtoJSON ¶
func (x *SOWorldOp) MarshalProtoJSON(s *json.MarshalState)
MarshalProtoJSON marshals the SOWorldOp message to JSON.
func (*SOWorldOp) MarshalProtoText ¶
func (*SOWorldOp) MarshalToSizedBufferVT ¶
func (*SOWorldOp) ProtoMessage ¶
func (*SOWorldOp) ProtoMessage()
func (*SOWorldOp) UnmarshalBlock ¶
UnmarshalBlock unmarshals the block to the object. This is the final step of decoding, after transformations.
func (*SOWorldOp) UnmarshalJSON ¶
UnmarshalJSON unmarshals the SOWorldOp from JSON.
func (*SOWorldOp) UnmarshalProtoJSON ¶
func (x *SOWorldOp) UnmarshalProtoJSON(s *json.UnmarshalState)
UnmarshalProtoJSON unmarshals the SOWorldOp message from JSON.
func (*SOWorldOp) UnmarshalVT ¶
type SOWorldOp_ApplyTxOp ¶
type SOWorldOp_ApplyTxOp struct {
// ApplyTxOp applies a world transaction.
ApplyTxOp *ApplyTxOp `protobuf:"bytes,2,opt,name=apply_tx_op,json=applyTxOp,proto3,oneof"`
}
func (*SOWorldOp_ApplyTxOp) CloneOneofVT ¶
func (m *SOWorldOp_ApplyTxOp) CloneOneofVT() isSOWorldOp_Body
func (*SOWorldOp_ApplyTxOp) CloneVT ¶
func (m *SOWorldOp_ApplyTxOp) CloneVT() *SOWorldOp_ApplyTxOp
func (*SOWorldOp_ApplyTxOp) EqualVT ¶
func (this *SOWorldOp_ApplyTxOp) EqualVT(thatIface isSOWorldOp_Body) bool
func (*SOWorldOp_ApplyTxOp) MarshalToSizedBufferVT ¶
func (m *SOWorldOp_ApplyTxOp) MarshalToSizedBufferVT(dAtA []byte) (int, error)
func (*SOWorldOp_ApplyTxOp) MarshalToVT ¶
func (m *SOWorldOp_ApplyTxOp) MarshalToVT(dAtA []byte) (int, error)
func (*SOWorldOp_ApplyTxOp) SizeVT ¶
func (m *SOWorldOp_ApplyTxOp) SizeVT() (n int)
type SOWorldOp_InitWorld ¶
type SOWorldOp_InitWorld struct {
// InitWorld is the init world operation.
InitWorld *InitWorldOp `protobuf:"bytes,1,opt,name=init_world,json=initWorld,proto3,oneof"`
}
func (*SOWorldOp_InitWorld) CloneOneofVT ¶
func (m *SOWorldOp_InitWorld) CloneOneofVT() isSOWorldOp_Body
func (*SOWorldOp_InitWorld) CloneVT ¶
func (m *SOWorldOp_InitWorld) CloneVT() *SOWorldOp_InitWorld
func (*SOWorldOp_InitWorld) EqualVT ¶
func (this *SOWorldOp_InitWorld) EqualVT(thatIface isSOWorldOp_Body) bool
func (*SOWorldOp_InitWorld) MarshalToSizedBufferVT ¶
func (m *SOWorldOp_InitWorld) MarshalToSizedBufferVT(dAtA []byte) (int, error)
func (*SOWorldOp_InitWorld) MarshalToVT ¶
func (m *SOWorldOp_InitWorld) MarshalToVT(dAtA []byte) (int, error)
func (*SOWorldOp_InitWorld) SizeVT ¶
func (m *SOWorldOp_InitWorld) SizeVT() (n int)
type SpaceWorldFinalizationDecision ¶ added in v0.52.0
type SpaceWorldFinalizationDecision struct {
// Status is the accept/reject/fence result.
Status SpaceWorldFinalizationStatus `protobuf:"varint,1,opt,name=status,proto3" json:"status,omitempty"`
AcceptedSharedObjectRoot *sobject.SORoot `` /* 134-byte string literal not displayed */
// AcceptedWorldRoot is set only when status is ACCEPTED.
AcceptedWorldRoot *bucket.ObjectRef `protobuf:"bytes,3,opt,name=accepted_world_root,json=acceptedWorldRoot,proto3" json:"acceptedWorldRoot,omitempty"`
// Error explains rejected or retryable decisions.
Error string `protobuf:"bytes,4,opt,name=error,proto3" json:"error,omitempty"`
// Retryable indicates the follower may refresh and resubmit a new packet.
Retryable bool `protobuf:"varint,5,opt,name=retryable,proto3" json:"retryable,omitempty"`
// LocalOperationId echoes the packet local id for follower correlation.
LocalOperationId string `protobuf:"bytes,6,opt,name=local_operation_id,json=localOperationId,proto3" json:"localOperationId,omitempty"`
// contains filtered or unexported fields
}
SpaceWorldFinalizationDecision is returned by the leader or Spacewave daemon.
func (*SpaceWorldFinalizationDecision) CloneMessageVT ¶ added in v0.52.0
func (m *SpaceWorldFinalizationDecision) CloneMessageVT() protobuf_go_lite.CloneMessage
func (*SpaceWorldFinalizationDecision) CloneVT ¶ added in v0.52.0
func (m *SpaceWorldFinalizationDecision) CloneVT() *SpaceWorldFinalizationDecision
func (*SpaceWorldFinalizationDecision) EqualMessageVT ¶ added in v0.52.0
func (this *SpaceWorldFinalizationDecision) EqualMessageVT(thatMsg any) bool
func (*SpaceWorldFinalizationDecision) EqualVT ¶ added in v0.52.0
func (this *SpaceWorldFinalizationDecision) EqualVT(that *SpaceWorldFinalizationDecision) bool
func (*SpaceWorldFinalizationDecision) GetAcceptedSharedObjectRoot ¶ added in v0.52.0
func (x *SpaceWorldFinalizationDecision) GetAcceptedSharedObjectRoot() *sobject.SORoot
func (*SpaceWorldFinalizationDecision) GetAcceptedWorldRoot ¶ added in v0.52.0
func (x *SpaceWorldFinalizationDecision) GetAcceptedWorldRoot() *bucket.ObjectRef
func (*SpaceWorldFinalizationDecision) GetError ¶ added in v0.52.0
func (x *SpaceWorldFinalizationDecision) GetError() string
func (*SpaceWorldFinalizationDecision) GetLocalOperationId ¶ added in v0.52.0
func (x *SpaceWorldFinalizationDecision) GetLocalOperationId() string
func (*SpaceWorldFinalizationDecision) GetRetryable ¶ added in v0.52.0
func (x *SpaceWorldFinalizationDecision) GetRetryable() bool
func (*SpaceWorldFinalizationDecision) GetStatus ¶ added in v0.52.0
func (x *SpaceWorldFinalizationDecision) GetStatus() SpaceWorldFinalizationStatus
func (*SpaceWorldFinalizationDecision) MarshalJSON ¶ added in v0.52.0
func (x *SpaceWorldFinalizationDecision) MarshalJSON() ([]byte, error)
MarshalJSON marshals the SpaceWorldFinalizationDecision to JSON.
func (*SpaceWorldFinalizationDecision) MarshalProtoJSON ¶ added in v0.52.0
func (x *SpaceWorldFinalizationDecision) MarshalProtoJSON(s *json.MarshalState)
MarshalProtoJSON marshals the SpaceWorldFinalizationDecision message to JSON.
func (*SpaceWorldFinalizationDecision) MarshalProtoText ¶ added in v0.52.0
func (x *SpaceWorldFinalizationDecision) MarshalProtoText() string
func (*SpaceWorldFinalizationDecision) MarshalToSizedBufferVT ¶ added in v0.52.0
func (m *SpaceWorldFinalizationDecision) MarshalToSizedBufferVT(dAtA []byte) (int, error)
func (*SpaceWorldFinalizationDecision) MarshalToVT ¶ added in v0.52.0
func (m *SpaceWorldFinalizationDecision) MarshalToVT(dAtA []byte) (int, error)
func (*SpaceWorldFinalizationDecision) MarshalVT ¶ added in v0.52.0
func (m *SpaceWorldFinalizationDecision) MarshalVT() (dAtA []byte, err error)
func (*SpaceWorldFinalizationDecision) ProtoMessage ¶ added in v0.52.0
func (*SpaceWorldFinalizationDecision) ProtoMessage()
func (*SpaceWorldFinalizationDecision) Reset ¶ added in v0.52.0
func (x *SpaceWorldFinalizationDecision) Reset()
func (*SpaceWorldFinalizationDecision) SizeVT ¶ added in v0.52.0
func (m *SpaceWorldFinalizationDecision) SizeVT() (n int)
func (*SpaceWorldFinalizationDecision) String ¶ added in v0.52.0
func (x *SpaceWorldFinalizationDecision) String() string
func (*SpaceWorldFinalizationDecision) UnmarshalJSON ¶ added in v0.52.0
func (x *SpaceWorldFinalizationDecision) UnmarshalJSON(b []byte) error
UnmarshalJSON unmarshals the SpaceWorldFinalizationDecision from JSON.
func (*SpaceWorldFinalizationDecision) UnmarshalProtoJSON ¶ added in v0.52.0
func (x *SpaceWorldFinalizationDecision) UnmarshalProtoJSON(s *json.UnmarshalState)
UnmarshalProtoJSON unmarshals the SpaceWorldFinalizationDecision message from JSON.
func (*SpaceWorldFinalizationDecision) UnmarshalVT ¶ added in v0.52.0
func (m *SpaceWorldFinalizationDecision) UnmarshalVT(dAtA []byte) error
func (*SpaceWorldFinalizationDecision) Validate ¶ added in v0.52.0
func (d *SpaceWorldFinalizationDecision) Validate() error
Validate checks accepted decisions carry the roots followers need to refresh.
type SpaceWorldFinalizationPacket ¶ added in v0.52.0
type SpaceWorldFinalizationPacket struct {
BaseSharedObjectRoot *sobject.SORoot `protobuf:"bytes,1,opt,name=base_shared_object_root,json=baseSharedObjectRoot,proto3" json:"baseSharedObjectRoot,omitempty"`
// BaseWorldRoot is the World root observed before candidate work.
BaseWorldRoot *bucket.ObjectRef `protobuf:"bytes,2,opt,name=base_world_root,json=baseWorldRoot,proto3" json:"baseWorldRoot,omitempty"`
// CandidateWorldRoot is the follower-produced candidate World root.
CandidateWorldRoot *bucket.ObjectRef `protobuf:"bytes,3,opt,name=candidate_world_root,json=candidateWorldRoot,proto3" json:"candidateWorldRoot,omitempty"`
// CandidateContentId identifies the candidate content/op payload being finalized.
CandidateContentId []byte `protobuf:"bytes,4,opt,name=candidate_content_id,json=candidateContentId,proto3" json:"candidateContentId,omitempty"`
// StorageGeneration is the storage coordinator generation observed by the follower.
StorageGeneration uint64 `protobuf:"varint,5,opt,name=storage_generation,json=storageGeneration,proto3" json:"storageGeneration,omitempty"`
// AuthorityEpoch identifies the leader/daemon authority epoch observed by the follower.
AuthorityEpoch uint64 `protobuf:"varint,6,opt,name=authority_epoch,json=authorityEpoch,proto3" json:"authorityEpoch,omitempty"`
// BlocksAvailable is true when the follower believes candidate blocks are readable by the authority owner.
BlocksAvailable bool `protobuf:"varint,7,opt,name=blocks_available,json=blocksAvailable,proto3" json:"blocksAvailable,omitempty"`
// Op is the SharedObject World operation that produced the candidate root.
Op *SOWorldOp `protobuf:"bytes,8,opt,name=op,proto3" json:"op,omitempty"`
// FollowerParticipantId identifies the submitting follower.
FollowerParticipantId string `protobuf:"bytes,9,opt,name=follower_participant_id,json=followerParticipantId,proto3" json:"followerParticipantId,omitempty"`
// LocalOperationId lets the follower correlate accepted/rejected decisions.
LocalOperationId string `protobuf:"bytes,10,opt,name=local_operation_id,json=localOperationId,proto3" json:"localOperationId,omitempty"`
// contains filtered or unexported fields
}
SpaceWorldFinalizationPacket is submitted by a follower after it has produced candidate World content but before any SharedObject root is finalized.
func (*SpaceWorldFinalizationPacket) CloneMessageVT ¶ added in v0.52.0
func (m *SpaceWorldFinalizationPacket) CloneMessageVT() protobuf_go_lite.CloneMessage
func (*SpaceWorldFinalizationPacket) CloneVT ¶ added in v0.52.0
func (m *SpaceWorldFinalizationPacket) CloneVT() *SpaceWorldFinalizationPacket
func (*SpaceWorldFinalizationPacket) EqualMessageVT ¶ added in v0.52.0
func (this *SpaceWorldFinalizationPacket) EqualMessageVT(thatMsg any) bool
func (*SpaceWorldFinalizationPacket) EqualVT ¶ added in v0.52.0
func (this *SpaceWorldFinalizationPacket) EqualVT(that *SpaceWorldFinalizationPacket) bool
func (*SpaceWorldFinalizationPacket) GetAuthorityEpoch ¶ added in v0.52.0
func (x *SpaceWorldFinalizationPacket) GetAuthorityEpoch() uint64
func (*SpaceWorldFinalizationPacket) GetBaseSharedObjectRoot ¶ added in v0.52.0
func (x *SpaceWorldFinalizationPacket) GetBaseSharedObjectRoot() *sobject.SORoot
func (*SpaceWorldFinalizationPacket) GetBaseWorldRoot ¶ added in v0.52.0
func (x *SpaceWorldFinalizationPacket) GetBaseWorldRoot() *bucket.ObjectRef
func (*SpaceWorldFinalizationPacket) GetBlocksAvailable ¶ added in v0.52.0
func (x *SpaceWorldFinalizationPacket) GetBlocksAvailable() bool
func (*SpaceWorldFinalizationPacket) GetCandidateContentId ¶ added in v0.52.0
func (x *SpaceWorldFinalizationPacket) GetCandidateContentId() []byte
func (*SpaceWorldFinalizationPacket) GetCandidateWorldRoot ¶ added in v0.52.0
func (x *SpaceWorldFinalizationPacket) GetCandidateWorldRoot() *bucket.ObjectRef
func (*SpaceWorldFinalizationPacket) GetFollowerParticipantId ¶ added in v0.52.0
func (x *SpaceWorldFinalizationPacket) GetFollowerParticipantId() string
func (*SpaceWorldFinalizationPacket) GetLocalOperationId ¶ added in v0.52.0
func (x *SpaceWorldFinalizationPacket) GetLocalOperationId() string
func (*SpaceWorldFinalizationPacket) GetOp ¶ added in v0.52.0
func (x *SpaceWorldFinalizationPacket) GetOp() *SOWorldOp
func (*SpaceWorldFinalizationPacket) GetStorageGeneration ¶ added in v0.52.0
func (x *SpaceWorldFinalizationPacket) GetStorageGeneration() uint64
func (*SpaceWorldFinalizationPacket) MarshalJSON ¶ added in v0.52.0
func (x *SpaceWorldFinalizationPacket) MarshalJSON() ([]byte, error)
MarshalJSON marshals the SpaceWorldFinalizationPacket to JSON.
func (*SpaceWorldFinalizationPacket) MarshalProtoJSON ¶ added in v0.52.0
func (x *SpaceWorldFinalizationPacket) MarshalProtoJSON(s *json.MarshalState)
MarshalProtoJSON marshals the SpaceWorldFinalizationPacket message to JSON.
func (*SpaceWorldFinalizationPacket) MarshalProtoText ¶ added in v0.52.0
func (x *SpaceWorldFinalizationPacket) MarshalProtoText() string
func (*SpaceWorldFinalizationPacket) MarshalToSizedBufferVT ¶ added in v0.52.0
func (m *SpaceWorldFinalizationPacket) MarshalToSizedBufferVT(dAtA []byte) (int, error)
func (*SpaceWorldFinalizationPacket) MarshalToVT ¶ added in v0.52.0
func (m *SpaceWorldFinalizationPacket) MarshalToVT(dAtA []byte) (int, error)
func (*SpaceWorldFinalizationPacket) MarshalVT ¶ added in v0.52.0
func (m *SpaceWorldFinalizationPacket) MarshalVT() (dAtA []byte, err error)
func (*SpaceWorldFinalizationPacket) ProtoMessage ¶ added in v0.52.0
func (*SpaceWorldFinalizationPacket) ProtoMessage()
func (*SpaceWorldFinalizationPacket) Reset ¶ added in v0.52.0
func (x *SpaceWorldFinalizationPacket) Reset()
func (*SpaceWorldFinalizationPacket) SizeVT ¶ added in v0.52.0
func (m *SpaceWorldFinalizationPacket) SizeVT() (n int)
func (*SpaceWorldFinalizationPacket) String ¶ added in v0.52.0
func (x *SpaceWorldFinalizationPacket) String() string
func (*SpaceWorldFinalizationPacket) UnmarshalJSON ¶ added in v0.52.0
func (x *SpaceWorldFinalizationPacket) UnmarshalJSON(b []byte) error
UnmarshalJSON unmarshals the SpaceWorldFinalizationPacket from JSON.
func (*SpaceWorldFinalizationPacket) UnmarshalProtoJSON ¶ added in v0.52.0
func (x *SpaceWorldFinalizationPacket) UnmarshalProtoJSON(s *json.UnmarshalState)
UnmarshalProtoJSON unmarshals the SpaceWorldFinalizationPacket message from JSON.
func (*SpaceWorldFinalizationPacket) UnmarshalVT ¶ added in v0.52.0
func (m *SpaceWorldFinalizationPacket) UnmarshalVT(dAtA []byte) error
func (*SpaceWorldFinalizationPacket) Validate ¶ added in v0.52.0
func (p *SpaceWorldFinalizationPacket) Validate() error
Validate checks the follower finalization packet has the fields required for authority-side stale-base and candidate-availability decisions.
type SpaceWorldFinalizationStatus ¶ added in v0.52.0
type SpaceWorldFinalizationStatus int32
SpaceWorldFinalizationStatus is the authority owner's decision for a packet.
const ( // SPACE_WORLD_FINALIZATION_STATUS_UNKNOWN is invalid. SpaceWorldFinalizationStatus_SPACE_WORLD_FINALIZATION_STATUS_UNKNOWN SpaceWorldFinalizationStatus = 0 // SPACE_WORLD_FINALIZATION_STATUS_ACCEPTED means the SharedObject root was finalized. SpaceWorldFinalizationStatus_SPACE_WORLD_FINALIZATION_STATUS_ACCEPTED SpaceWorldFinalizationStatus = 1 // SPACE_WORLD_FINALIZATION_STATUS_REJECTED means the candidate is not accepted and should be retained follower-side only. SpaceWorldFinalizationStatus_SPACE_WORLD_FINALIZATION_STATUS_REJECTED SpaceWorldFinalizationStatus = 2 // SPACE_WORLD_FINALIZATION_STATUS_STALE_BASE means the candidate was based on stale SharedObject or World state. SpaceWorldFinalizationStatus_SPACE_WORLD_FINALIZATION_STATUS_STALE_BASE SpaceWorldFinalizationStatus = 3 // SPACE_WORLD_FINALIZATION_STATUS_MISSING_BLOCK means the authority owner could not read candidate blocks. SpaceWorldFinalizationStatus_SPACE_WORLD_FINALIZATION_STATUS_MISSING_BLOCK SpaceWorldFinalizationStatus = 4 // SPACE_WORLD_FINALIZATION_STATUS_LOST_AUTHORITY means the contacted owner no longer holds finalization authority. SpaceWorldFinalizationStatus_SPACE_WORLD_FINALIZATION_STATUS_LOST_AUTHORITY SpaceWorldFinalizationStatus = 5 )
func (SpaceWorldFinalizationStatus) Enum ¶ added in v0.52.0
func (x SpaceWorldFinalizationStatus) Enum() *SpaceWorldFinalizationStatus
func (SpaceWorldFinalizationStatus) MarshalJSON ¶ added in v0.52.0
func (x SpaceWorldFinalizationStatus) MarshalJSON() ([]byte, error)
MarshalJSON marshals the SpaceWorldFinalizationStatus to JSON.
func (SpaceWorldFinalizationStatus) MarshalProtoJSON ¶ added in v0.52.0
func (x SpaceWorldFinalizationStatus) MarshalProtoJSON(s *json.MarshalState)
MarshalProtoJSON marshals the SpaceWorldFinalizationStatus to JSON.
func (SpaceWorldFinalizationStatus) MarshalProtoText ¶ added in v0.52.0
func (x SpaceWorldFinalizationStatus) MarshalProtoText() string
func (SpaceWorldFinalizationStatus) MarshalText ¶ added in v0.52.0
func (x SpaceWorldFinalizationStatus) MarshalText() ([]byte, error)
MarshalText marshals the SpaceWorldFinalizationStatus to text.
func (SpaceWorldFinalizationStatus) String ¶ added in v0.52.0
func (x SpaceWorldFinalizationStatus) String() string
func (*SpaceWorldFinalizationStatus) UnmarshalJSON ¶ added in v0.52.0
func (x *SpaceWorldFinalizationStatus) UnmarshalJSON(b []byte) error
UnmarshalJSON unmarshals the SpaceWorldFinalizationStatus from JSON.
func (*SpaceWorldFinalizationStatus) UnmarshalProtoJSON ¶ added in v0.52.0
func (x *SpaceWorldFinalizationStatus) UnmarshalProtoJSON(s *json.UnmarshalState)
UnmarshalProtoJSON unmarshals the SpaceWorldFinalizationStatus from JSON.
func (*SpaceWorldFinalizationStatus) UnmarshalText ¶ added in v0.52.0
func (x *SpaceWorldFinalizationStatus) UnmarshalText(b []byte) error
UnmarshalText unmarshals the SpaceWorldFinalizationStatus from text.
type SpaceWorldRejectedCandidate ¶ added in v0.52.0
type SpaceWorldRejectedCandidate struct {
// Packet is the candidate submission that was not accepted.
Packet *SpaceWorldFinalizationPacket `protobuf:"bytes,1,opt,name=packet,proto3" json:"packet,omitempty"`
// Decision is the non-accepted authority outcome.
Decision *SpaceWorldFinalizationDecision `protobuf:"bytes,2,opt,name=decision,proto3" json:"decision,omitempty"`
// RetainedUnixNano records when the follower retained cleanup bookkeeping.
RetainedUnixNano uint64 `protobuf:"varint,3,opt,name=retained_unix_nano,json=retainedUnixNano,proto3" json:"retainedUnixNano,omitempty"`
// contains filtered or unexported fields
}
SpaceWorldRejectedCandidate records follower-local retention bookkeeping for a candidate that authority did not accept. The record does not grant any leader-side block deletion authority.
func (*SpaceWorldRejectedCandidate) CloneMessageVT ¶ added in v0.52.0
func (m *SpaceWorldRejectedCandidate) CloneMessageVT() protobuf_go_lite.CloneMessage
func (*SpaceWorldRejectedCandidate) CloneVT ¶ added in v0.52.0
func (m *SpaceWorldRejectedCandidate) CloneVT() *SpaceWorldRejectedCandidate
func (*SpaceWorldRejectedCandidate) EqualMessageVT ¶ added in v0.52.0
func (this *SpaceWorldRejectedCandidate) EqualMessageVT(thatMsg any) bool
func (*SpaceWorldRejectedCandidate) EqualVT ¶ added in v0.52.0
func (this *SpaceWorldRejectedCandidate) EqualVT(that *SpaceWorldRejectedCandidate) bool
func (*SpaceWorldRejectedCandidate) GetDecision ¶ added in v0.52.0
func (x *SpaceWorldRejectedCandidate) GetDecision() *SpaceWorldFinalizationDecision
func (*SpaceWorldRejectedCandidate) GetPacket ¶ added in v0.52.0
func (x *SpaceWorldRejectedCandidate) GetPacket() *SpaceWorldFinalizationPacket
func (*SpaceWorldRejectedCandidate) GetRetainedUnixNano ¶ added in v0.52.0
func (x *SpaceWorldRejectedCandidate) GetRetainedUnixNano() uint64
func (*SpaceWorldRejectedCandidate) MarshalJSON ¶ added in v0.52.0
func (x *SpaceWorldRejectedCandidate) MarshalJSON() ([]byte, error)
MarshalJSON marshals the SpaceWorldRejectedCandidate to JSON.
func (*SpaceWorldRejectedCandidate) MarshalProtoJSON ¶ added in v0.52.0
func (x *SpaceWorldRejectedCandidate) MarshalProtoJSON(s *json.MarshalState)
MarshalProtoJSON marshals the SpaceWorldRejectedCandidate message to JSON.
func (*SpaceWorldRejectedCandidate) MarshalProtoText ¶ added in v0.52.0
func (x *SpaceWorldRejectedCandidate) MarshalProtoText() string
func (*SpaceWorldRejectedCandidate) MarshalToSizedBufferVT ¶ added in v0.52.0
func (m *SpaceWorldRejectedCandidate) MarshalToSizedBufferVT(dAtA []byte) (int, error)
func (*SpaceWorldRejectedCandidate) MarshalToVT ¶ added in v0.52.0
func (m *SpaceWorldRejectedCandidate) MarshalToVT(dAtA []byte) (int, error)
func (*SpaceWorldRejectedCandidate) MarshalVT ¶ added in v0.52.0
func (m *SpaceWorldRejectedCandidate) MarshalVT() (dAtA []byte, err error)
func (*SpaceWorldRejectedCandidate) ProtoMessage ¶ added in v0.52.0
func (*SpaceWorldRejectedCandidate) ProtoMessage()
func (*SpaceWorldRejectedCandidate) Reset ¶ added in v0.52.0
func (x *SpaceWorldRejectedCandidate) Reset()
func (*SpaceWorldRejectedCandidate) SizeVT ¶ added in v0.52.0
func (m *SpaceWorldRejectedCandidate) SizeVT() (n int)
func (*SpaceWorldRejectedCandidate) String ¶ added in v0.52.0
func (x *SpaceWorldRejectedCandidate) String() string
func (*SpaceWorldRejectedCandidate) UnmarshalJSON ¶ added in v0.52.0
func (x *SpaceWorldRejectedCandidate) UnmarshalJSON(b []byte) error
UnmarshalJSON unmarshals the SpaceWorldRejectedCandidate from JSON.
func (*SpaceWorldRejectedCandidate) UnmarshalProtoJSON ¶ added in v0.52.0
func (x *SpaceWorldRejectedCandidate) UnmarshalProtoJSON(s *json.UnmarshalState)
UnmarshalProtoJSON unmarshals the SpaceWorldRejectedCandidate message from JSON.
func (*SpaceWorldRejectedCandidate) UnmarshalVT ¶ added in v0.52.0
func (m *SpaceWorldRejectedCandidate) UnmarshalVT(dAtA []byte) error