proto

package
v1.0.1 Latest Latest
Warning

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

Go to latest
Published: Aug 28, 2026 License: AGPL-3.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	EffectOp_name = map[int32]string{
		0: "UNKNOWN_OP",
		1: "INSERT_OP",
		2: "REMOVE_OP",
	}
	EffectOp_value = map[string]int32{
		"UNKNOWN_OP": 0,
		"INSERT_OP":  1,
		"REMOVE_OP":  2,
	}
)

Enum value maps for EffectOp.

View Source
var (
	MergeRule_name = map[int32]string{
		0: "LAST_WRITE_WINS",
		1: "ADDITIVE_INT",
		2: "ADDITIVE_FLOAT",
		3: "MAX_INT",
		4: "FIRST_WRITE_WINS",
		5: "MAX_BYTES",
	}
	MergeRule_value = map[string]int32{
		"LAST_WRITE_WINS":  0,
		"ADDITIVE_INT":     1,
		"ADDITIVE_FLOAT":   2,
		"MAX_INT":          3,
		"FIRST_WRITE_WINS": 4,
		"MAX_BYTES":        5,
	}
)

Enum value maps for MergeRule.

View Source
var (
	CollectionKind_name = map[int32]string{
		0: "SCALAR",
		1: "KEYED",
		2: "ORDERED",
	}
	CollectionKind_value = map[string]int32{
		"SCALAR":  0,
		"KEYED":   1,
		"ORDERED": 2,
	}
)

Enum value maps for CollectionKind.

View Source
var (
	Placement_name = map[int32]string{
		0: "PLACE_NONE",
		1: "PLACE_HEAD",
		2: "PLACE_TAIL",
		3: "PLACE_AFTER",
		4: "PLACE_BEFORE",
		5: "PLACE_SELF",
	}
	Placement_value = map[string]int32{
		"PLACE_NONE":   0,
		"PLACE_HEAD":   1,
		"PLACE_TAIL":   2,
		"PLACE_AFTER":  3,
		"PLACE_BEFORE": 4,
		"PLACE_SELF":   5,
	}
)

Enum value maps for Placement.

View Source
var (
	Compression_name = map[int32]string{
		0: "COMPRESSION_NONE",
		1: "COMPRESSION_ZSTD",
	}
	Compression_value = map[string]int32{
		"COMPRESSION_NONE": 0,
		"COMPRESSION_ZSTD": 1,
	}
)

Enum value maps for Compression.

View Source
var (
	ValueType_name = map[int32]string{
		0:  "TYPE_UNSPECIFIED",
		1:  "TYPE_STRING",
		2:  "TYPE_LIST",
		3:  "TYPE_HASH",
		4:  "TYPE_SET",
		5:  "TYPE_ZSET",
		6:  "TYPE_STREAM",
		7:  "TYPE_HLL",
		8:  "TYPE_BITMAP",
		9:  "TYPE_GEO",
		10: "TYPE_JSON",
		11: "TYPE_JSON_OBJECT",
		12: "TYPE_JSON_ARRAY",
	}
	ValueType_value = map[string]int32{
		"TYPE_UNSPECIFIED": 0,
		"TYPE_STRING":      1,
		"TYPE_LIST":        2,
		"TYPE_HASH":        3,
		"TYPE_SET":         4,
		"TYPE_ZSET":        5,
		"TYPE_STREAM":      6,
		"TYPE_HLL":         7,
		"TYPE_BITMAP":      8,
		"TYPE_GEO":         9,
		"TYPE_JSON":        10,
		"TYPE_JSON_OBJECT": 11,
		"TYPE_JSON_ARRAY":  12,
	}
)

Enum value maps for ValueType.

View Source
var (
	Verdict_name = map[int32]string{
		0: "VERDICT_UNSPECIFIED",
		1: "WON",
		2: "LOST",
	}
	Verdict_value = map[string]int32{
		"VERDICT_UNSPECIFIED": 0,
		"WON":                 1,
		"LOST":                2,
	}
)

Enum value maps for Verdict.

View Source
var (
	PredicateCmpOp_name = map[int32]string{
		0: "CMP_EQ",
		1: "CMP_LT",
		2: "CMP_LE",
		3: "CMP_GT",
		4: "CMP_GE",
	}
	PredicateCmpOp_value = map[string]int32{
		"CMP_EQ": 0,
		"CMP_LT": 1,
		"CMP_LE": 2,
		"CMP_GT": 3,
		"CMP_GE": 4,
	}
)

Enum value maps for PredicateCmpOp.

View Source
var (
	TypedValue_Kind_name = map[int32]string{
		0: "NULL_VALUE",
		1: "INT",
		2: "FLOAT",
		3: "TEXT",
		4: "BLOB",
	}
	TypedValue_Kind_value = map[string]int32{
		"NULL_VALUE": 0,
		"INT":        1,
		"FLOAT":      2,
		"TEXT":       3,
		"BLOB":       4,
	}
)

Enum value maps for TypedValue_Kind.

View Source
var (
	Predicate_Kind_name = map[int32]string{
		0: "BOOL",
		1: "AND",
		2: "OR",
		3: "NOT",
		4: "CMP",
		5: "COL_CMP",
		6: "IS_NULL",
	}
	Predicate_Kind_value = map[string]int32{
		"BOOL":    0,
		"AND":     1,
		"OR":      2,
		"NOT":     3,
		"CMP":     4,
		"COL_CMP": 5,
		"IS_NULL": 6,
	}
)

Enum value maps for Predicate_Kind.

View Source
var (
	RowWriteEffect_Kind_name = map[int32]string{
		0: "INSERT",
		1: "UPDATE",
		2: "DELETE",
	}
	RowWriteEffect_Kind_value = map[string]int32{
		"INSERT": 0,
		"UPDATE": 1,
		"DELETE": 2,
	}
)

Enum value maps for RowWriteEffect_Kind.

View Source
var File_cluster_proto_replication_proto protoreflect.FileDescriptor

Functions

func RegisterReplicationServer

func RegisterReplicationServer(s *grpc.Server, srv ReplicationServer)

Types

type CollectionKind

type CollectionKind int32

CollectionKind determines how elements are tracked within a key.

const (
	CollectionKind_SCALAR  CollectionKind = 0 // Single value per key (string, counter)
	CollectionKind_KEYED   CollectionKind = 1 // Named elements: member/field/entry (set, hash, zset)
	CollectionKind_ORDERED CollectionKind = 2 // Positionally ordered elements (list)
)

func (CollectionKind) Descriptor

func (CollectionKind) Enum

func (x CollectionKind) Enum() *CollectionKind

func (CollectionKind) EnumDescriptor deprecated

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

Deprecated: Use CollectionKind.Descriptor instead.

func (CollectionKind) Number

func (CollectionKind) String

func (x CollectionKind) String() string

func (CollectionKind) Type

type CompressedValue

type CompressedValue struct {
	Codec  Compression `protobuf:"varint,1,opt,name=codec,proto3,enum=swytch.cluster.v1.Compression" json:"codec,omitempty"`
	RawLen uint64      `protobuf:"varint,2,opt,name=raw_len,json=rawLen,proto3" json:"raw_len,omitempty"`
	Data   []byte      `protobuf:"bytes,3,opt,name=data,proto3" json:"data,omitempty"`
	// contains filtered or unexported fields
}

CompressedValue is a raw value stored under a compression codec: data is codec output, raw_len its inflated length. A distinct value arm rather than a flag on raw, so a consumer that never learned about compression sees no raw value at all (loud) instead of codec bytes masquerading as the value (silent). Writers compress by choice (--compress, and only when it actually shrinks the value); every reader inflates unconditionally, so nodes with different settings interoperate on one DAG. Travels with the effect everywhere — peers, cloud, snapshots — and billing declares raw_len, not the stored length.

func (*CompressedValue) Descriptor deprecated

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

Deprecated: Use CompressedValue.ProtoReflect.Descriptor instead.

func (*CompressedValue) GetCodec

func (x *CompressedValue) GetCodec() Compression

func (*CompressedValue) GetData

func (x *CompressedValue) GetData() []byte

func (*CompressedValue) GetRawLen

func (x *CompressedValue) GetRawLen() uint64

func (*CompressedValue) ProtoMessage

func (*CompressedValue) ProtoMessage()

func (*CompressedValue) ProtoReflect

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

func (*CompressedValue) Reset

func (x *CompressedValue) Reset()

func (*CompressedValue) String

func (x *CompressedValue) String() string

type Compression

type Compression int32

DataEffect carries a mutation to a key's value. Compression identifies the codec of a CompressedValue.

const (
	Compression_COMPRESSION_NONE Compression = 0
	Compression_COMPRESSION_ZSTD Compression = 1
)

func (Compression) Descriptor

func (Compression) Enum

func (x Compression) Enum() *Compression

func (Compression) EnumDescriptor deprecated

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

Deprecated: Use Compression.Descriptor instead.

func (Compression) Number

func (x Compression) Number() protoreflect.EnumNumber

func (Compression) String

func (x Compression) String() string

func (Compression) Type

type DataEffect

type DataEffect struct {
	Op         EffectOp       `protobuf:"varint,1,opt,name=op,proto3,enum=swytch.cluster.v1.EffectOp" json:"op,omitempty"`
	Merge      MergeRule      `protobuf:"varint,2,opt,name=merge,proto3,enum=swytch.cluster.v1.MergeRule" json:"merge,omitempty"`
	Collection CollectionKind `protobuf:"varint,3,opt,name=collection,proto3,enum=swytch.cluster.v1.CollectionKind" json:"collection,omitempty"`
	Placement  Placement      `protobuf:"varint,4,opt,name=placement,proto3,enum=swytch.cluster.v1.Placement" json:"placement,omitempty"`
	Reference  []byte         `protobuf:"bytes,5,opt,name=reference,proto3" json:"reference,omitempty"` // pivot element ID for AFTER/BEFORE placement
	Id         []byte         `protobuf:"bytes,6,opt,name=id,proto3" json:"id,omitempty"`               // element ID (nil for scalar operations)
	// Types that are assignable to Value:
	//
	//	*DataEffect_Raw
	//	*DataEffect_IntVal
	//	*DataEffect_FloatVal
	//	*DataEffect_Compressed
	//	*DataEffect_Child
	Value isDataEffect_Value `protobuf_oneof:"value"`
	// contains filtered or unexported fields
}

func (*DataEffect) Decompress

func (d *DataEffect) Decompress() []byte

Decompress returns the value's plain bytes regardless of how the writer stored them: the raw arm as-is, the compressed arm inflated. This is THE byte-value reader — call it wherever GetRaw() would be read as a value, or a compressed value silently reads as absent. Non-byte arms (int, float) and nil return nil, mirroring GetRaw. The stored effect is never mutated; inflation allocates fresh bytes per call.

A corrupt or unknown-codec value returns nil after logging loudly: the same bytes fail identically on every observer, so "no value" is at least a deterministic answer while the log points at the damage.

func (*DataEffect) Descriptor deprecated

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

Deprecated: Use DataEffect.ProtoReflect.Descriptor instead.

func (*DataEffect) GetChild

func (x *DataEffect) GetChild() []byte

func (*DataEffect) GetCollection

func (x *DataEffect) GetCollection() CollectionKind

func (*DataEffect) GetCompressed

func (x *DataEffect) GetCompressed() *CompressedValue

func (*DataEffect) GetFloatVal

func (x *DataEffect) GetFloatVal() float64

func (*DataEffect) GetId

func (x *DataEffect) GetId() []byte

func (*DataEffect) GetIntVal

func (x *DataEffect) GetIntVal() int64

func (*DataEffect) GetMerge

func (x *DataEffect) GetMerge() MergeRule

func (*DataEffect) GetOp

func (x *DataEffect) GetOp() EffectOp

func (*DataEffect) GetPlacement

func (x *DataEffect) GetPlacement() Placement

func (*DataEffect) GetRaw

func (x *DataEffect) GetRaw() []byte

func (*DataEffect) GetReference

func (x *DataEffect) GetReference() []byte

func (*DataEffect) GetValue

func (m *DataEffect) GetValue() isDataEffect_Value

func (*DataEffect) ProtoMessage

func (*DataEffect) ProtoMessage()

func (*DataEffect) ProtoReflect

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

func (*DataEffect) Reset

func (x *DataEffect) Reset()

func (*DataEffect) String

func (x *DataEffect) String() string

type DataEffect_Child

type DataEffect_Child struct {
	Child []byte `protobuf:"bytes,14,opt,name=child,proto3,oneof"` // element references a child container partition (JSON); value lives in partition <child>
}

type DataEffect_Compressed

type DataEffect_Compressed struct {
	Compressed *CompressedValue `protobuf:"bytes,13,opt,name=compressed,proto3,oneof"`
}

type DataEffect_FloatVal

type DataEffect_FloatVal struct {
	FloatVal float64 `protobuf:"fixed64,12,opt,name=float_val,json=floatVal,proto3,oneof"`
}

type DataEffect_IntVal

type DataEffect_IntVal struct {
	IntVal int64 `protobuf:"zigzag64,11,opt,name=int_val,json=intVal,proto3,oneof"`
}

type DataEffect_Raw

type DataEffect_Raw struct {
	Raw []byte `protobuf:"bytes,10,opt,name=raw,proto3,oneof"`
}

type Effect

type Effect struct {

	// Identity & causality
	Key            []byte                 `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	Hlc            *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=hlc,proto3" json:"hlc,omitempty"`
	NodeId         uint64                 `protobuf:"varint,3,opt,name=node_id,json=nodeId,proto3" json:"node_id,omitempty"`                          // originating node
	Deps           []*EffectRef           `protobuf:"bytes,4,rep,name=deps,proto3" json:"deps,omitempty"`                                             // causal dependencies (empty = root)
	TxnId          string                 `protobuf:"bytes,5,opt,name=txn_id,json=txnId,proto3" json:"txn_id,omitempty"`                              // transaction ID (empty = non-transactional)
	ForkChoiceHash []byte                 `protobuf:"bytes,6,opt,name=fork_choice_hash,json=forkChoiceHash,proto3" json:"fork_choice_hash,omitempty"` // SHA-256(node_id_LE8 || hlc_LE8), computed at emit time
	Virtual        []byte                 `protobuf:"bytes,7,opt,name=virtual,proto3" json:"virtual,omitempty"`                                       // partition key WITHIN the key (empty = root partition); enables nested values
	// The effect payload — exactly one of these is set.
	//
	// Types that are assignable to Kind:
	//
	//	*Effect_Data
	//	*Effect_Meta
	//	*Effect_TxnBind
	//	*Effect_Snapshot
	//	*Effect_Subscription
	//	*Effect_Serialization
	//	*Effect_Noop
	//	*Effect_Observation
	//	*Effect_RowWrite
	//	*Effect_PubsubMessage
	Kind isEffect_Kind `protobuf_oneof:"kind"`
	// contains filtered or unexported fields
}

Effect is the top-level envelope stored in the log and sent over the wire.

func (*Effect) Descriptor deprecated

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

Deprecated: Use Effect.ProtoReflect.Descriptor instead.

func (*Effect) GetData

func (x *Effect) GetData() *DataEffect

func (*Effect) GetDeps

func (x *Effect) GetDeps() []*EffectRef

func (*Effect) GetForkChoiceHash

func (x *Effect) GetForkChoiceHash() []byte

func (*Effect) GetHlc

func (x *Effect) GetHlc() *timestamppb.Timestamp

func (*Effect) GetKey

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

func (*Effect) GetKind

func (m *Effect) GetKind() isEffect_Kind

func (*Effect) GetMeta

func (x *Effect) GetMeta() *MetaEffect

func (*Effect) GetNodeId

func (x *Effect) GetNodeId() uint64

func (*Effect) GetNoop

func (x *Effect) GetNoop() *NoopEffect

func (*Effect) GetObservation

func (x *Effect) GetObservation() *ObservationEffect

func (*Effect) GetPubsubMessage

func (x *Effect) GetPubsubMessage() *PubSubMessage

func (*Effect) GetRowWrite

func (x *Effect) GetRowWrite() *RowWriteEffect

func (*Effect) GetSerialization

func (x *Effect) GetSerialization() *SerializationEffect

func (*Effect) GetSnapshot

func (x *Effect) GetSnapshot() *SnapshotEffect

func (*Effect) GetSubscription

func (x *Effect) GetSubscription() *SubscriptionEffect

func (*Effect) GetTxnBind

func (x *Effect) GetTxnBind() *TransactionalBindEffect

func (*Effect) GetTxnId

func (x *Effect) GetTxnId() string

func (*Effect) GetVirtual

func (x *Effect) GetVirtual() []byte

func (*Effect) ProtoMessage

func (*Effect) ProtoMessage()

func (*Effect) ProtoReflect

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

func (*Effect) Reset

func (x *Effect) Reset()

func (*Effect) String

func (x *Effect) String() string

type EffectOp

type EffectOp int32
const (
	EffectOp_UNKNOWN_OP EffectOp = 0
	EffectOp_INSERT_OP  EffectOp = 1
	EffectOp_REMOVE_OP  EffectOp = 2
)

func (EffectOp) Descriptor

func (EffectOp) Descriptor() protoreflect.EnumDescriptor

func (EffectOp) Enum

func (x EffectOp) Enum() *EffectOp

func (EffectOp) EnumDescriptor deprecated

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

Deprecated: Use EffectOp.Descriptor instead.

func (EffectOp) Number

func (x EffectOp) Number() protoreflect.EnumNumber

func (EffectOp) String

func (x EffectOp) String() string

func (EffectOp) Type

type EffectRef

type EffectRef struct {
	NodeId uint64 `protobuf:"varint,1,opt,name=NodeId,proto3" json:"NodeId,omitempty"`
	Offset uint64 `protobuf:"varint,2,opt,name=Offset,proto3" json:"Offset,omitempty"`
	// contains filtered or unexported fields
}

func (*EffectRef) Descriptor deprecated

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

Deprecated: Use EffectRef.ProtoReflect.Descriptor instead.

func (*EffectRef) GetNodeId

func (x *EffectRef) GetNodeId() uint64

func (*EffectRef) GetOffset

func (x *EffectRef) GetOffset() uint64

func (*EffectRef) ProtoMessage

func (*EffectRef) ProtoMessage()

func (*EffectRef) ProtoReflect

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

func (*EffectRef) Reset

func (x *EffectRef) Reset()

func (*EffectRef) String

func (x *EffectRef) String() string

type EffectSeq

type EffectSeq [2]uint64

EffectSeq identifies an effect globally: [0] = NodeID, [1] = monotonic offset. Supports == and != (array comparison) and works as a map key. NOT orderable by design — do not sort or compare with < / >.

func EffectSeqFromRef

func EffectSeqFromRef(ref *EffectRef) EffectSeq

EffectSeqFromRef converts a protobuf EffectRef to an EffectSeq.

func NewEffectSeq

func NewEffectSeq(nodeID NodeID, offset uint64) EffectSeq

func (EffectSeq) NodeID

func (e EffectSeq) NodeID() NodeID

func (EffectSeq) Offset

func (e EffectSeq) Offset() uint64

func (EffectSeq) ToRef

func (e EffectSeq) ToRef() *EffectRef

ToRef converts an EffectSeq to its protobuf representation.

type Effect_Data

type Effect_Data struct {
	Data *DataEffect `protobuf:"bytes,10,opt,name=data,proto3,oneof"`
}

type Effect_Meta

type Effect_Meta struct {
	Meta *MetaEffect `protobuf:"bytes,11,opt,name=meta,proto3,oneof"`
}

type Effect_Noop

type Effect_Noop struct {
	Noop *NoopEffect `protobuf:"bytes,17,opt,name=noop,proto3,oneof"`
}

type Effect_Observation

type Effect_Observation struct {
	Observation *ObservationEffect `protobuf:"bytes,18,opt,name=observation,proto3,oneof"`
}

type Effect_PubsubMessage

type Effect_PubsubMessage struct {
	PubsubMessage *PubSubMessage `protobuf:"bytes,20,opt,name=pubsub_message,json=pubsubMessage,proto3,oneof"`
}

type Effect_RowWrite

type Effect_RowWrite struct {
	RowWrite *RowWriteEffect `protobuf:"bytes,19,opt,name=row_write,json=rowWrite,proto3,oneof"`
}

type Effect_Serialization

type Effect_Serialization struct {
	Serialization *SerializationEffect `protobuf:"bytes,16,opt,name=serialization,proto3,oneof"`
}

type Effect_Snapshot

type Effect_Snapshot struct {
	Snapshot *SnapshotEffect `protobuf:"bytes,14,opt,name=snapshot,proto3,oneof"`
}

type Effect_Subscription

type Effect_Subscription struct {
	Subscription *SubscriptionEffect `protobuf:"bytes,15,opt,name=subscription,proto3,oneof"`
}

type Effect_TxnBind

type Effect_TxnBind struct {
	// field 12 removed (was BindEffect, now replaced by multi-dep effects)
	TxnBind *TransactionalBindEffect `protobuf:"bytes,13,opt,name=txn_bind,json=txnBind,proto3,oneof"`
}

type FetchRequest

type FetchRequest struct {
	Ref *EffectRef `protobuf:"bytes,1,opt,name=ref,proto3" json:"ref,omitempty"`
	// contains filtered or unexported fields
}

FetchRequest asks the origin for effect bytes

func (*FetchRequest) Descriptor deprecated

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

Deprecated: Use FetchRequest.ProtoReflect.Descriptor instead.

func (*FetchRequest) GetRef

func (x *FetchRequest) GetRef() *EffectRef

func (*FetchRequest) ProtoMessage

func (*FetchRequest) ProtoMessage()

func (*FetchRequest) ProtoReflect

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

func (*FetchRequest) Reset

func (x *FetchRequest) Reset()

func (*FetchRequest) String

func (x *FetchRequest) String() string

type FetchResponse

type FetchResponse struct {
	Ref        *EffectRef `protobuf:"bytes,1,opt,name=ref,proto3" json:"ref,omitempty"`
	EffectData []byte     `protobuf:"bytes,2,opt,name=effect_data,json=effectData,proto3" json:"effect_data,omitempty"`
	// contains filtered or unexported fields
}

FetchResponse returns the serialized effect bytes

func (*FetchResponse) Descriptor deprecated

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

Deprecated: Use FetchResponse.ProtoReflect.Descriptor instead.

func (*FetchResponse) GetEffectData

func (x *FetchResponse) GetEffectData() []byte

func (*FetchResponse) GetRef

func (x *FetchResponse) GetRef() *EffectRef

func (*FetchResponse) ProtoMessage

func (*FetchResponse) ProtoMessage()

func (*FetchResponse) ProtoReflect

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

func (*FetchResponse) Reset

func (x *FetchResponse) Reset()

func (*FetchResponse) String

func (x *FetchResponse) String() string

type ForwardedCommand

type ForwardedCommand struct {
	CommandName []byte   `protobuf:"bytes,1,opt,name=command_name,json=commandName,proto3" json:"command_name,omitempty"`
	Args        [][]byte `protobuf:"bytes,2,rep,name=args,proto3" json:"args,omitempty"`
	// contains filtered or unexported fields
}

func (*ForwardedCommand) Descriptor deprecated

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

Deprecated: Use ForwardedCommand.ProtoReflect.Descriptor instead.

func (*ForwardedCommand) GetArgs

func (x *ForwardedCommand) GetArgs() [][]byte

func (*ForwardedCommand) GetCommandName

func (x *ForwardedCommand) GetCommandName() []byte

func (*ForwardedCommand) ProtoMessage

func (*ForwardedCommand) ProtoMessage()

func (*ForwardedCommand) ProtoReflect

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

func (*ForwardedCommand) Reset

func (x *ForwardedCommand) Reset()

func (*ForwardedCommand) String

func (x *ForwardedCommand) String() string

type ForwardedResponse

type ForwardedResponse struct {
	RespData     []byte `protobuf:"bytes,1,opt,name=resp_data,json=respData,proto3" json:"resp_data,omitempty"` // raw RESP wire bytes for entire tx result
	Error        bool   `protobuf:"varint,2,opt,name=error,proto3" json:"error,omitempty"`
	ErrorMessage string `protobuf:"bytes,3,opt,name=error_message,json=errorMessage,proto3" json:"error_message,omitempty"`
	// contains filtered or unexported fields
}

func (*ForwardedResponse) Descriptor deprecated

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

Deprecated: Use ForwardedResponse.ProtoReflect.Descriptor instead.

func (*ForwardedResponse) GetError

func (x *ForwardedResponse) GetError() bool

func (*ForwardedResponse) GetErrorMessage

func (x *ForwardedResponse) GetErrorMessage() string

func (*ForwardedResponse) GetRespData

func (x *ForwardedResponse) GetRespData() []byte

func (*ForwardedResponse) ProtoMessage

func (*ForwardedResponse) ProtoMessage()

func (*ForwardedResponse) ProtoReflect

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

func (*ForwardedResponse) Reset

func (x *ForwardedResponse) Reset()

func (*ForwardedResponse) String

func (x *ForwardedResponse) String() string

type ForwardedTransaction

type ForwardedTransaction struct {
	Commands       []*ForwardedCommand `protobuf:"bytes,1,rep,name=commands,proto3" json:"commands,omitempty"`
	WatchedKeys    [][]byte            `protobuf:"bytes,2,rep,name=watched_keys,json=watchedKeys,proto3" json:"watched_keys,omitempty"` // WATCH keys if any
	OriginNode     uint64              `protobuf:"varint,3,opt,name=origin_node,json=originNode,proto3" json:"origin_node,omitempty"`
	AuthorizedUser string              `protobuf:"bytes,5,opt,name=authorized_user,json=authorizedUser,proto3" json:"authorized_user,omitempty"` // already-authenticated user from origin node (for ACL enforcement)
	// contains filtered or unexported fields
}

ForwardedTransaction carries an entire transaction to be executed on the serialization leader. The leader executes all commands atomically and returns the raw RESP wire bytes.

func (*ForwardedTransaction) Descriptor deprecated

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

Deprecated: Use ForwardedTransaction.ProtoReflect.Descriptor instead.

func (*ForwardedTransaction) GetAuthorizedUser

func (x *ForwardedTransaction) GetAuthorizedUser() string

func (*ForwardedTransaction) GetCommands

func (x *ForwardedTransaction) GetCommands() []*ForwardedCommand

func (*ForwardedTransaction) GetOriginNode

func (x *ForwardedTransaction) GetOriginNode() uint64

func (*ForwardedTransaction) GetWatchedKeys

func (x *ForwardedTransaction) GetWatchedKeys() [][]byte

func (*ForwardedTransaction) ProtoMessage

func (*ForwardedTransaction) ProtoMessage()

func (*ForwardedTransaction) ProtoReflect

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

func (*ForwardedTransaction) Reset

func (x *ForwardedTransaction) Reset()

func (*ForwardedTransaction) String

func (x *ForwardedTransaction) String() string

type KeyConsumedTips

type KeyConsumedTips struct {
	Key          []byte       `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	ConsumedTips []*EffectRef `protobuf:"bytes,2,rep,name=consumed_tips,json=consumedTips,proto3" json:"consumed_tips,omitempty"`
	// contains filtered or unexported fields
}

KeyConsumedTips carries a bind's consumed tips for one key.

func (*KeyConsumedTips) Descriptor deprecated

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

Deprecated: Use KeyConsumedTips.ProtoReflect.Descriptor instead.

func (*KeyConsumedTips) GetConsumedTips

func (x *KeyConsumedTips) GetConsumedTips() []*EffectRef

func (*KeyConsumedTips) GetKey

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

func (*KeyConsumedTips) ProtoMessage

func (*KeyConsumedTips) ProtoMessage()

func (*KeyConsumedTips) ProtoReflect

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

func (*KeyConsumedTips) Reset

func (x *KeyConsumedTips) Reset()

func (*KeyConsumedTips) String

func (x *KeyConsumedTips) String() string

type MergeRule

type MergeRule int32

MergeRule determines how concurrent values combine during reconstruction.

const (
	MergeRule_LAST_WRITE_WINS  MergeRule = 0 // Higher HLC wins (string SET, ZADD absolute)
	MergeRule_ADDITIVE_INT     MergeRule = 1 // Sum int64 deltas (INCR)
	MergeRule_ADDITIVE_FLOAT   MergeRule = 2 // Sum float64 deltas (INCRBYFLOAT, ZINCRBY)
	MergeRule_MAX_INT          MergeRule = 3 // Take maximum (HLL registers)
	MergeRule_FIRST_WRITE_WINS MergeRule = 4 // Lower HLC wins (serialization request/release)
	MergeRule_MAX_BYTES        MergeRule = 5 // Element-wise max of raw byte arrays (HLL registers)
)

func (MergeRule) Descriptor

func (MergeRule) Descriptor() protoreflect.EnumDescriptor

func (MergeRule) Enum

func (x MergeRule) Enum() *MergeRule

func (MergeRule) EnumDescriptor deprecated

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

Deprecated: Use MergeRule.Descriptor instead.

func (MergeRule) Number

func (x MergeRule) Number() protoreflect.EnumNumber

func (MergeRule) String

func (x MergeRule) String() string

func (MergeRule) Type

type MetaEffect

type MetaEffect struct {
	ExpiresAt *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`                             // non-zero = metadata update (TTL), zero = pure read marker
	TypeTag   ValueType              `protobuf:"varint,2,opt,name=type_tag,json=typeTag,proto3,enum=swytch.cluster.v1.ValueType" json:"type_tag,omitempty"` // non-zero = declares type for reconstruction
	ElementId []byte                 `protobuf:"bytes,3,opt,name=element_id,json=elementId,proto3" json:"element_id,omitempty"`                             // when set, expires_at targets this specific element within a KEYED collection
	// contains filtered or unexported fields
}

MetaEffect marks a causal dependency without changing state. Used for metadata-only mutations like TTL updates.

func (*MetaEffect) Descriptor deprecated

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

Deprecated: Use MetaEffect.ProtoReflect.Descriptor instead.

func (*MetaEffect) GetElementId

func (x *MetaEffect) GetElementId() []byte

func (*MetaEffect) GetExpiresAt

func (x *MetaEffect) GetExpiresAt() *timestamppb.Timestamp

func (*MetaEffect) GetTypeTag

func (x *MetaEffect) GetTypeTag() ValueType

func (*MetaEffect) ProtoMessage

func (*MetaEffect) ProtoMessage()

func (*MetaEffect) ProtoReflect

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

func (*MetaEffect) Reset

func (x *MetaEffect) Reset()

func (*MetaEffect) String

func (x *MetaEffect) String() string

type NackNotify

type NackNotify struct {
	Key           []byte           `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`                                            // the key with the conflict
	Conflicting   *EffectRef       `protobuf:"bytes,2,opt,name=conflicting,proto3" json:"conflicting,omitempty"`                            // the effect that triggered the conflict
	Tips          []*EffectRef     `protobuf:"bytes,3,rep,name=tips,proto3" json:"tips,omitempty"`                                          // sender's full tip set for this key
	TipDetails    []*NackTipDetail `protobuf:"bytes,4,rep,name=tip_details,json=tipDetails,proto3" json:"tip_details,omitempty"`            // metadata per tip for smart conflict detection
	NotSubscribed bool             `protobuf:"varint,5,opt,name=not_subscribed,json=notSubscribed,proto3" json:"not_subscribed,omitempty"`  // receiver is not subscribed to this key, so it discarded the write
	CausalChain   []*EffectRef     `protobuf:"bytes,6,rep,name=causal_chain,json=causalChain,proto3" json:"causal_chain,omitempty"`         // all effect refs from tips to LCA snapshot; lets receiver bulk-fetch
	NodeKeyFilter []byte           `protobuf:"bytes,7,opt,name=node_key_filter,json=nodeKeyFilter,proto3" json:"node_key_filter,omitempty"` // responder's own per-node cuckoo filter of keys it holds (for free read-misses)
	FilterVersion uint64           `protobuf:"varint,8,opt,name=filter_version,json=filterVersion,proto3" json:"filter_version,omitempty"`  // monotonic version of node_key_filter; cache replace-if-newer
	// contains filtered or unexported fields
}

NackNotify signals a causal conflict on a key. Sent when a received effect's deps don't match the receiver's current tips.

func (*NackNotify) Descriptor deprecated

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

Deprecated: Use NackNotify.ProtoReflect.Descriptor instead.

func (*NackNotify) GetCausalChain

func (x *NackNotify) GetCausalChain() []*EffectRef

func (*NackNotify) GetConflicting

func (x *NackNotify) GetConflicting() *EffectRef

func (*NackNotify) GetFilterVersion

func (x *NackNotify) GetFilterVersion() uint64

func (*NackNotify) GetKey

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

func (*NackNotify) GetNodeKeyFilter

func (x *NackNotify) GetNodeKeyFilter() []byte

func (*NackNotify) GetNotSubscribed

func (x *NackNotify) GetNotSubscribed() bool

func (*NackNotify) GetTipDetails

func (x *NackNotify) GetTipDetails() []*NackTipDetail

func (*NackNotify) GetTips

func (x *NackNotify) GetTips() []*EffectRef

func (*NackNotify) ProtoMessage

func (*NackNotify) ProtoMessage()

func (*NackNotify) ProtoReflect

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

func (*NackNotify) Reset

func (x *NackNotify) Reset()

func (*NackNotify) String

func (x *NackNotify) String() string

type NackTipDetail

type NackTipDetail struct {
	Ref                *EffectRef             `protobuf:"bytes,1,opt,name=ref,proto3" json:"ref,omitempty"` // the tip's identity (node_id + offset)
	Hlc                *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=hlc,proto3" json:"hlc,omitempty"`
	IsTransactional    bool                   `protobuf:"varint,4,opt,name=is_transactional,json=isTransactional,proto3" json:"is_transactional,omitempty"`
	IsData             bool                   `protobuf:"varint,5,opt,name=is_data,json=isData,proto3" json:"is_data,omitempty"`   // true = DataEffect
	IsBind             bool                   `protobuf:"varint,6,opt,name=is_bind,json=isBind,proto3" json:"is_bind,omitempty"`   // true = TransactionalBindEffect
	BindHlc            *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=bind_hlc,json=bindHlc,proto3" json:"bind_hlc,omitempty"` // the bind's txn_hlc (for FWW comparison)
	Collection         CollectionKind         `protobuf:"varint,8,opt,name=collection,proto3,enum=swytch.cluster.v1.CollectionKind" json:"collection,omitempty"`
	ElementId          []byte                 `protobuf:"bytes,9,opt,name=element_id,json=elementId,proto3" json:"element_id,omitempty"`
	Op                 EffectOp               `protobuf:"varint,10,opt,name=op,proto3,enum=swytch.cluster.v1.EffectOp" json:"op,omitempty"`
	Deps               []*EffectRef           `protobuf:"bytes,11,rep,name=deps,proto3" json:"deps,omitempty"`
	BindNodeId         uint64                 `protobuf:"varint,12,opt,name=bind_node_id,json=bindNodeId,proto3" json:"bind_node_id,omitempty"`
	BindForkChoiceHash []byte                 `protobuf:"bytes,13,opt,name=bind_fork_choice_hash,json=bindForkChoiceHash,proto3" json:"bind_fork_choice_hash,omitempty"`
	BindConsumedTips   []*KeyConsumedTips     `protobuf:"bytes,14,rep,name=bind_consumed_tips,json=bindConsumedTips,proto3" json:"bind_consumed_tips,omitempty"` // per-key consumed tips for bindsShareBase check
	// contains filtered or unexported fields
}

NackTipDetail provides metadata about a competing tip to avoid extra fetches.

func (*NackTipDetail) Descriptor deprecated

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

Deprecated: Use NackTipDetail.ProtoReflect.Descriptor instead.

func (*NackTipDetail) GetBindConsumedTips

func (x *NackTipDetail) GetBindConsumedTips() []*KeyConsumedTips

func (*NackTipDetail) GetBindForkChoiceHash

func (x *NackTipDetail) GetBindForkChoiceHash() []byte

func (*NackTipDetail) GetBindHlc

func (x *NackTipDetail) GetBindHlc() *timestamppb.Timestamp

func (*NackTipDetail) GetBindNodeId

func (x *NackTipDetail) GetBindNodeId() uint64

func (*NackTipDetail) GetCollection

func (x *NackTipDetail) GetCollection() CollectionKind

func (*NackTipDetail) GetDeps

func (x *NackTipDetail) GetDeps() []*EffectRef

func (*NackTipDetail) GetElementId

func (x *NackTipDetail) GetElementId() []byte

func (*NackTipDetail) GetHlc

func (x *NackTipDetail) GetHlc() *timestamppb.Timestamp

func (*NackTipDetail) GetIsBind

func (x *NackTipDetail) GetIsBind() bool

func (*NackTipDetail) GetIsData

func (x *NackTipDetail) GetIsData() bool

func (*NackTipDetail) GetIsTransactional

func (x *NackTipDetail) GetIsTransactional() bool

func (*NackTipDetail) GetOp

func (x *NackTipDetail) GetOp() EffectOp

func (*NackTipDetail) GetRef

func (x *NackTipDetail) GetRef() *EffectRef

func (*NackTipDetail) ProtoMessage

func (*NackTipDetail) ProtoMessage()

func (*NackTipDetail) ProtoReflect

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

func (*NackTipDetail) Reset

func (x *NackTipDetail) Reset()

func (*NackTipDetail) String

func (x *NackTipDetail) String() string

type NodeID

type NodeID uint64

NodeID is an ephemeral node identifier: 32 bits seconds-since-epoch | 32 bits random. Generated fresh on every startup — never reused across restarts.

func NewNodeID

func NewNodeID() NodeID

NewNodeID generates a fresh ephemeral node ID.

func (NodeID) Uint64

func (n NodeID) Uint64() uint64

type NoopEffect

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

NoopEffect marks a causal dependency used to detect phantom reads/writes in transactions.

func (*NoopEffect) Descriptor deprecated

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

Deprecated: Use NoopEffect.ProtoReflect.Descriptor instead.

func (*NoopEffect) ProtoMessage

func (*NoopEffect) ProtoMessage()

func (*NoopEffect) ProtoReflect

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

func (*NoopEffect) Reset

func (x *NoopEffect) Reset()

func (*NoopEffect) String

func (x *NoopEffect) String() string

type ObservationEffect

type ObservationEffect struct {
	Predicate *Predicate `protobuf:"bytes,1,opt,name=predicate,proto3" json:"predicate,omitempty"`
	// contains filtered or unexported fields
}

ObservationEffect records a sub-DAG observation made by a transaction. Emitted during scans at the table-identity key (s/<table>); fork-choice evaluates the predicate against concurrent RowWriteEffects arriving at the same key and triggers a conflict when a write satisfies the predicate.

The column ordinals referenced in the predicate are pinned to the schema tip at observation time; any subsequent ALTER COLUMN forks the table-identity key and aborts the observing transaction via the usual fork-choice mechanism.

func (*ObservationEffect) Descriptor deprecated

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

Deprecated: Use ObservationEffect.ProtoReflect.Descriptor instead.

func (*ObservationEffect) GetPredicate

func (x *ObservationEffect) GetPredicate() *Predicate

func (*ObservationEffect) ProtoMessage

func (*ObservationEffect) ProtoMessage()

func (*ObservationEffect) ProtoReflect

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

func (*ObservationEffect) Reset

func (x *ObservationEffect) Reset()

func (*ObservationEffect) String

func (x *ObservationEffect) String() string

type OffsetNotify

type OffsetNotify struct {
	Origin       *EffectRef             `protobuf:"bytes,1,opt,name=origin,proto3" json:"origin,omitempty"`                                 // where this effect lives
	Hlc          *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=hlc,proto3" json:"hlc,omitempty"`                                       // effect's HLC timestamp (for causality ordering)
	Deps         []*EffectRef           `protobuf:"bytes,3,rep,name=deps,proto3" json:"deps,omitempty"`                                     // parent effects (0 = root, 1 = linear, 2 = bind)
	Key          []byte                 `protobuf:"bytes,4,opt,name=key,proto3" json:"key,omitempty"`                                       // Redis key
	EffectData   []byte                 `protobuf:"bytes,5,opt,name=effect_data,json=effectData,proto3" json:"effect_data,omitempty"`       // eagerly-pushed effect bytes (same-region only)
	TraceContext []byte                 `protobuf:"bytes,7,opt,name=trace_context,json=traceContext,proto3" json:"trace_context,omitempty"` // OTel trace context (26 bytes, optional)
	// contains filtered or unexported fields
}

OffsetNotify is broadcast after every local write

func (*OffsetNotify) Descriptor deprecated

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

Deprecated: Use OffsetNotify.ProtoReflect.Descriptor instead.

func (*OffsetNotify) GetDeps

func (x *OffsetNotify) GetDeps() []*EffectRef

func (*OffsetNotify) GetEffectData

func (x *OffsetNotify) GetEffectData() []byte

func (*OffsetNotify) GetHlc

func (x *OffsetNotify) GetHlc() *timestamppb.Timestamp

func (*OffsetNotify) GetKey

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

func (*OffsetNotify) GetOrigin

func (x *OffsetNotify) GetOrigin() *EffectRef

func (*OffsetNotify) GetTraceContext

func (x *OffsetNotify) GetTraceContext() []byte

func (*OffsetNotify) ProtoMessage

func (*OffsetNotify) ProtoMessage()

func (*OffsetNotify) ProtoReflect

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

func (*OffsetNotify) Reset

func (x *OffsetNotify) Reset()

func (*OffsetNotify) String

func (x *OffsetNotify) String() string

type Placement

type Placement int32

Placement determines position semantics for mutations.

const (
	Placement_PLACE_NONE   Placement = 0 // Default (scalar overwrite, keyed add/remove)
	Placement_PLACE_HEAD   Placement = 1 // Insert at head (list LPUSH)
	Placement_PLACE_TAIL   Placement = 2 // Insert at tail / append (list RPUSH, string APPEND)
	Placement_PLACE_AFTER  Placement = 3 // After reference element (LINSERT AFTER, SETRANGE)
	Placement_PLACE_BEFORE Placement = 4 // Before reference element (LINSERT BEFORE)
	Placement_PLACE_SELF   Placement = 5 // Operate on existing element (update/tombstone)
)

func (Placement) Descriptor

func (Placement) Descriptor() protoreflect.EnumDescriptor

func (Placement) Enum

func (x Placement) Enum() *Placement

func (Placement) EnumDescriptor deprecated

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

Deprecated: Use Placement.Descriptor instead.

func (Placement) Number

func (x Placement) Number() protoreflect.EnumNumber

func (Placement) String

func (x Placement) String() string

func (Placement) Type

type Predicate

type Predicate struct {
	Kind     Predicate_Kind `protobuf:"varint,1,opt,name=kind,proto3,enum=swytch.cluster.v1.Predicate_Kind" json:"kind,omitempty"`
	BoolVal  bool           `protobuf:"varint,2,opt,name=bool_val,json=boolVal,proto3" json:"bool_val,omitempty"`
	Children []*Predicate   `protobuf:"bytes,3,rep,name=children,proto3" json:"children,omitempty"`
	Child    *Predicate     `protobuf:"bytes,4,opt,name=child,proto3" json:"child,omitempty"`
	Col      uint32         `protobuf:"varint,5,opt,name=col,proto3" json:"col,omitempty"`
	Col2     uint32         `protobuf:"varint,6,opt,name=col2,proto3" json:"col2,omitempty"`
	Op       PredicateCmpOp `protobuf:"varint,7,opt,name=op,proto3,enum=swytch.cluster.v1.PredicateCmpOp" json:"op,omitempty"`
	Literal  *TypedValue    `protobuf:"bytes,8,opt,name=literal,proto3" json:"literal,omitempty"`
	// contains filtered or unexported fields
}

Predicate is a boolean expression tree describing the sub-DAG a transaction observed during a read. Exactly one payload group is meaningful, discriminated by Kind:

BOOL     -> bool_val
AND / OR -> children
NOT      -> child
CMP      -> col, op, literal
COL_CMP  -> col, op, col2
IS_NULL  -> col

func (*Predicate) Descriptor deprecated

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

Deprecated: Use Predicate.ProtoReflect.Descriptor instead.

func (*Predicate) GetBoolVal

func (x *Predicate) GetBoolVal() bool

func (*Predicate) GetChild

func (x *Predicate) GetChild() *Predicate

func (*Predicate) GetChildren

func (x *Predicate) GetChildren() []*Predicate

func (*Predicate) GetCol

func (x *Predicate) GetCol() uint32

func (*Predicate) GetCol2

func (x *Predicate) GetCol2() uint32

func (*Predicate) GetKind

func (x *Predicate) GetKind() Predicate_Kind

func (*Predicate) GetLiteral

func (x *Predicate) GetLiteral() *TypedValue

func (*Predicate) GetOp

func (x *Predicate) GetOp() PredicateCmpOp

func (*Predicate) ProtoMessage

func (*Predicate) ProtoMessage()

func (*Predicate) ProtoReflect

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

func (*Predicate) Reset

func (x *Predicate) Reset()

func (*Predicate) String

func (x *Predicate) String() string

type PredicateCmpOp

type PredicateCmpOp int32

PredicateCmpOp is the comparison operator for a Predicate.CMP or Predicate.COL_CMP term.

const (
	PredicateCmpOp_CMP_EQ PredicateCmpOp = 0
	PredicateCmpOp_CMP_LT PredicateCmpOp = 1
	PredicateCmpOp_CMP_LE PredicateCmpOp = 2
	PredicateCmpOp_CMP_GT PredicateCmpOp = 3
	PredicateCmpOp_CMP_GE PredicateCmpOp = 4
)

func (PredicateCmpOp) Descriptor

func (PredicateCmpOp) Enum

func (x PredicateCmpOp) Enum() *PredicateCmpOp

func (PredicateCmpOp) EnumDescriptor deprecated

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

Deprecated: Use PredicateCmpOp.Descriptor instead.

func (PredicateCmpOp) Number

func (PredicateCmpOp) String

func (x PredicateCmpOp) String() string

func (PredicateCmpOp) Type

type Predicate_Kind

type Predicate_Kind int32
const (
	Predicate_BOOL    Predicate_Kind = 0
	Predicate_AND     Predicate_Kind = 1
	Predicate_OR      Predicate_Kind = 2
	Predicate_NOT     Predicate_Kind = 3
	Predicate_CMP     Predicate_Kind = 4
	Predicate_COL_CMP Predicate_Kind = 5
	Predicate_IS_NULL Predicate_Kind = 6
)

func (Predicate_Kind) Descriptor

func (Predicate_Kind) Enum

func (x Predicate_Kind) Enum() *Predicate_Kind

func (Predicate_Kind) EnumDescriptor deprecated

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

Deprecated: Use Predicate_Kind.Descriptor instead.

func (Predicate_Kind) Number

func (Predicate_Kind) String

func (x Predicate_Kind) String() string

func (Predicate_Kind) Type

type PubSubMessage

type PubSubMessage struct {
	Channel []byte `protobuf:"bytes,1,opt,name=channel,proto3" json:"channel,omitempty"` // raw channel name (not the __swytch-prefixed routing key)
	Payload []byte `protobuf:"bytes,2,opt,name=payload,proto3" json:"payload,omitempty"`
	// contains filtered or unexported fields
}

PubSubMessage carries a fire-and-forget Redis PUBLISH payload to peers that have previously announced interest via an ephemeral SubscriptionEffect. Wire-only; never persisted, never indexed, never re-broadcast on receive.

func (*PubSubMessage) Descriptor deprecated

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

Deprecated: Use PubSubMessage.ProtoReflect.Descriptor instead.

func (*PubSubMessage) GetChannel

func (x *PubSubMessage) GetChannel() []byte

func (*PubSubMessage) GetPayload

func (x *PubSubMessage) GetPayload() []byte

func (*PubSubMessage) ProtoMessage

func (*PubSubMessage) ProtoMessage()

func (*PubSubMessage) ProtoReflect

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

func (*PubSubMessage) Reset

func (x *PubSubMessage) Reset()

func (*PubSubMessage) String

func (x *PubSubMessage) String() string

type ReducedEffect

type ReducedEffect struct {
	Op          EffectOp               `protobuf:"varint,1,opt,name=op,proto3,enum=swytch.cluster.v1.EffectOp" json:"op,omitempty"`
	Merge       MergeRule              `protobuf:"varint,2,opt,name=merge,proto3,enum=swytch.cluster.v1.MergeRule" json:"merge,omitempty"`
	Collection  CollectionKind         `protobuf:"varint,3,opt,name=collection,proto3,enum=swytch.cluster.v1.CollectionKind" json:"collection,omitempty"`
	Hlc         *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=hlc,proto3" json:"hlc,omitempty"`
	NodeId      uint64                 `protobuf:"varint,5,opt,name=node_id,json=nodeId,proto3" json:"node_id,omitempty"`
	Commutative bool                   `protobuf:"varint,6,opt,name=commutative,proto3" json:"commutative,omitempty"`
	// SCALAR result
	Scalar *DataEffect `protobuf:"bytes,10,opt,name=scalar,proto3" json:"scalar,omitempty"`
	// KEYED result (hash, set, zset, HLL, stream)
	NetAdds    map[string]*ReducedElement `` /* 171-byte string literal not displayed */
	NetRemoves map[string]bool            `` /* 181-byte string literal not displayed */
	// ORDERED result (list)
	OrderedElements []*ReducedElement `protobuf:"bytes,13,rep,name=ordered_elements,json=orderedElements,proto3" json:"ordered_elements,omitempty"`
	// Metadata
	TypeTag   ValueType              `protobuf:"varint,20,opt,name=type_tag,json=typeTag,proto3,enum=swytch.cluster.v1.ValueType" json:"type_tag,omitempty"`
	ExpiresAt *timestamppb.Timestamp `protobuf:"bytes,21,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
	// Subscription tracking
	Subscribers map[uint64]bool `` /* 166-byte string literal not displayed */
	// Serialization leader (absent = no serialization active)
	SerializationLeader *uint64 `` /* 126-byte string literal not displayed */
	// Fork-choice hash propagated from the tip effect during reduction
	ForkChoiceHash []byte `protobuf:"bytes,24,opt,name=fork_choice_hash,json=forkChoiceHash,proto3" json:"fork_choice_hash,omitempty"`
	// Non-root virtual partitions of this key, keyed by full virtual path.
	// Empty/nil for flat keys (byte-identical to pre-nesting behavior). Each
	// entry is itself a flat ReducedEffect (its own partitions map is empty) —
	// a flat partition map linked at container markers, not a recursive tree.
	Partitions map[string]*ReducedEffect `` /* 162-byte string literal not displayed */
	// contains filtered or unexported fields
}

ReducedEffect is the canonical materialized state of a key. Produced by reducing a linear chain of effects (ReduceBranch) or merging concurrent branches (Merge2/MergeN).

func (*ReducedEffect) Descriptor deprecated

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

Deprecated: Use ReducedEffect.ProtoReflect.Descriptor instead.

func (*ReducedEffect) GetCollection

func (x *ReducedEffect) GetCollection() CollectionKind

func (*ReducedEffect) GetCommutative

func (x *ReducedEffect) GetCommutative() bool

func (*ReducedEffect) GetExpiresAt

func (x *ReducedEffect) GetExpiresAt() *timestamppb.Timestamp

func (*ReducedEffect) GetForkChoiceHash

func (x *ReducedEffect) GetForkChoiceHash() []byte

func (*ReducedEffect) GetHlc

func (x *ReducedEffect) GetHlc() *timestamppb.Timestamp

func (*ReducedEffect) GetMerge

func (x *ReducedEffect) GetMerge() MergeRule

func (*ReducedEffect) GetNetAdds

func (x *ReducedEffect) GetNetAdds() map[string]*ReducedElement

func (*ReducedEffect) GetNetRemoves

func (x *ReducedEffect) GetNetRemoves() map[string]bool

func (*ReducedEffect) GetNodeId

func (x *ReducedEffect) GetNodeId() uint64

func (*ReducedEffect) GetOp

func (x *ReducedEffect) GetOp() EffectOp

func (*ReducedEffect) GetOrderedElements

func (x *ReducedEffect) GetOrderedElements() []*ReducedElement

func (*ReducedEffect) GetPartitions

func (x *ReducedEffect) GetPartitions() map[string]*ReducedEffect

func (*ReducedEffect) GetScalar

func (x *ReducedEffect) GetScalar() *DataEffect

func (*ReducedEffect) GetSerializationLeader

func (x *ReducedEffect) GetSerializationLeader() uint64

func (*ReducedEffect) GetSubscribers

func (x *ReducedEffect) GetSubscribers() map[uint64]bool

func (*ReducedEffect) GetTypeTag

func (x *ReducedEffect) GetTypeTag() ValueType

func (*ReducedEffect) ProtoMessage

func (*ReducedEffect) ProtoMessage()

func (*ReducedEffect) ProtoReflect

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

func (*ReducedEffect) Reset

func (x *ReducedEffect) Reset()

func (*ReducedEffect) String

func (x *ReducedEffect) String() string

type ReducedElement

type ReducedElement struct {
	Data           *DataEffect            `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
	Hlc            *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=hlc,proto3" json:"hlc,omitempty"`
	NodeId         uint64                 `protobuf:"varint,3,opt,name=node_id,json=nodeId,proto3" json:"node_id,omitempty"`
	ExpiresAt      *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
	ForkChoiceHash []byte                 `protobuf:"bytes,5,opt,name=fork_choice_hash,json=forkChoiceHash,proto3" json:"fork_choice_hash,omitempty"` // for element-level winner selection
	// contains filtered or unexported fields
}

ReducedElement is a single element within a KEYED or ORDERED collection after reduction.

func (*ReducedElement) Descriptor deprecated

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

Deprecated: Use ReducedElement.ProtoReflect.Descriptor instead.

func (*ReducedElement) GetData

func (x *ReducedElement) GetData() *DataEffect

func (*ReducedElement) GetExpiresAt

func (x *ReducedElement) GetExpiresAt() *timestamppb.Timestamp

func (*ReducedElement) GetForkChoiceHash

func (x *ReducedElement) GetForkChoiceHash() []byte

func (*ReducedElement) GetHlc

func (x *ReducedElement) GetHlc() *timestamppb.Timestamp

func (*ReducedElement) GetNodeId

func (x *ReducedElement) GetNodeId() uint64

func (*ReducedElement) ProtoMessage

func (*ReducedElement) ProtoMessage()

func (*ReducedElement) ProtoReflect

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

func (*ReducedElement) Reset

func (x *ReducedElement) Reset()

func (*ReducedElement) String

func (x *ReducedElement) String() string

type ReplicationClient

type ReplicationClient interface {
	// NotifyStream is a bidirectional stream for offset notifications.
	// Each peer opens one stream; both sides send OffsetNotify messages.
	NotifyStream(ctx context.Context, opts ...grpc.CallOption) (Replication_NotifyStreamClient, error)
	// Fetch retrieves effect bytes by offset from the origin node.
	Fetch(ctx context.Context, in *FetchRequest, opts ...grpc.CallOption) (*FetchResponse, error)
}

ReplicationClient is the client API for Replication 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.

type ReplicationServer

type ReplicationServer interface {
	// NotifyStream is a bidirectional stream for offset notifications.
	// Each peer opens one stream; both sides send OffsetNotify messages.
	NotifyStream(Replication_NotifyStreamServer) error
	// Fetch retrieves effect bytes by offset from the origin node.
	Fetch(context.Context, *FetchRequest) (*FetchResponse, error)
	// contains filtered or unexported methods
}

ReplicationServer is the server API for Replication service. All implementations must embed UnimplementedReplicationServer for forward compatibility

type Replication_NotifyStreamClient

type Replication_NotifyStreamClient interface {
	Send(*OffsetNotify) error
	Recv() (*OffsetNotify, error)
	grpc.ClientStream
}

type Replication_NotifyStreamServer

type Replication_NotifyStreamServer interface {
	Send(*OffsetNotify) error
	Recv() (*OffsetNotify, error)
	grpc.ServerStream
}

type RowWriteEffect

type RowWriteEffect struct {
	Pk      []byte              `protobuf:"bytes,1,opt,name=pk,proto3" json:"pk,omitempty"`
	Kind    RowWriteEffect_Kind `protobuf:"varint,2,opt,name=kind,proto3,enum=swytch.cluster.v1.RowWriteEffect_Kind" json:"kind,omitempty"`
	Columns []*TypedValue       `protobuf:"bytes,3,rep,name=columns,proto3" json:"columns,omitempty"`
	// contains filtered or unexported fields
}

RowWriteEffect carries the full column tuple of a row-level INSERT/UPDATE/DELETE. Emitted alongside the per-column DataEffects that drive reduction, but attached to the table-identity key (s/<table>) so predicate evaluation in fork-choice sees all writes to the table at a single check-point.

For INSERTs and UPDATEs, `columns` is the effective post-commit tuple (carry-forward already applied). For DELETEs, `columns` is the pre-deletion state so observations like `role = 'admin'` can be evaluated against the row that was there.

func (*RowWriteEffect) Descriptor deprecated

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

Deprecated: Use RowWriteEffect.ProtoReflect.Descriptor instead.

func (*RowWriteEffect) GetColumns

func (x *RowWriteEffect) GetColumns() []*TypedValue

func (*RowWriteEffect) GetKind

func (x *RowWriteEffect) GetKind() RowWriteEffect_Kind

func (*RowWriteEffect) GetPk

func (x *RowWriteEffect) GetPk() []byte

func (*RowWriteEffect) ProtoMessage

func (*RowWriteEffect) ProtoMessage()

func (*RowWriteEffect) ProtoReflect

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

func (*RowWriteEffect) Reset

func (x *RowWriteEffect) Reset()

func (*RowWriteEffect) String

func (x *RowWriteEffect) String() string

type RowWriteEffect_Kind

type RowWriteEffect_Kind int32
const (
	RowWriteEffect_INSERT RowWriteEffect_Kind = 0
	RowWriteEffect_UPDATE RowWriteEffect_Kind = 1
	RowWriteEffect_DELETE RowWriteEffect_Kind = 2
)

func (RowWriteEffect_Kind) Descriptor

func (RowWriteEffect_Kind) Enum

func (RowWriteEffect_Kind) EnumDescriptor deprecated

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

Deprecated: Use RowWriteEffect_Kind.Descriptor instead.

func (RowWriteEffect_Kind) Number

func (RowWriteEffect_Kind) String

func (x RowWriteEffect_Kind) String() string

func (RowWriteEffect_Kind) Type

type SerializationEffect

type SerializationEffect struct {
	LeaderNodeId uint64 `protobuf:"varint,1,opt,name=leader_node_id,json=leaderNodeId,proto3" json:"leader_node_id,omitempty"`
	Release      bool   `protobuf:"varint,2,opt,name=release,proto3" json:"release,omitempty"` // false = request serialization, true = release
	// contains filtered or unexported fields
}

SerializationEffect requests or releases per-key serialized coordination. FWW among themselves, commutative with data effects.

func (*SerializationEffect) Descriptor deprecated

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

Deprecated: Use SerializationEffect.ProtoReflect.Descriptor instead.

func (*SerializationEffect) GetLeaderNodeId

func (x *SerializationEffect) GetLeaderNodeId() uint64

func (*SerializationEffect) GetRelease

func (x *SerializationEffect) GetRelease() bool

func (*SerializationEffect) ProtoMessage

func (*SerializationEffect) ProtoMessage()

func (*SerializationEffect) ProtoReflect

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

func (*SerializationEffect) Reset

func (x *SerializationEffect) Reset()

func (*SerializationEffect) String

func (x *SerializationEffect) String() string

type SnapshotEffect

type SnapshotEffect struct {
	Collection CollectionKind `protobuf:"varint,1,opt,name=collection,proto3,enum=swytch.cluster.v1.CollectionKind" json:"collection,omitempty"` // what kind of state is serialized
	State      *ReducedEffect `protobuf:"bytes,2,opt,name=state,proto3" json:"state,omitempty"`                                                  // materialized state
	// Verdicts adjudicated when this snapshot was emitted. Populated only by
	// winner-commit emissions: the committing txnID is WON, each competing bind
	// it beat during flushTx is LOST. State-only compaction snapshots (read
	// triggered) leave this empty.
	TxnVerdicts map[string]Verdict `` /* 214-byte string literal not displayed */
	// Previous snapshot on this key, if any. Forms a chain so verdict-walks can
	// traverse historical adjudications via snapshots without consulting tips.
	// Zero-valued if no prior snapshot exists for this key.
	PrevSnapshot *EffectRef `protobuf:"bytes,4,opt,name=prev_snapshot,json=prevSnapshot,proto3" json:"prev_snapshot,omitempty"`
	// contains filtered or unexported fields
}

SnapshotEffect stores a materialized state that short-circuits DAG walking, and optionally records the verdicts adjudicated at the moment of emission so cross-key reconstructs can derive winners/losers without re-walking past it.

func (*SnapshotEffect) Descriptor deprecated

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

Deprecated: Use SnapshotEffect.ProtoReflect.Descriptor instead.

func (*SnapshotEffect) GetCollection

func (x *SnapshotEffect) GetCollection() CollectionKind

func (*SnapshotEffect) GetPrevSnapshot

func (x *SnapshotEffect) GetPrevSnapshot() *EffectRef

func (*SnapshotEffect) GetState

func (x *SnapshotEffect) GetState() *ReducedEffect

func (*SnapshotEffect) GetTxnVerdicts

func (x *SnapshotEffect) GetTxnVerdicts() map[string]Verdict

func (*SnapshotEffect) ProtoMessage

func (*SnapshotEffect) ProtoMessage()

func (*SnapshotEffect) ProtoReflect

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

func (*SnapshotEffect) Reset

func (x *SnapshotEffect) Reset()

func (*SnapshotEffect) String

func (x *SnapshotEffect) String() string

type SubscriptionEffect

type SubscriptionEffect struct {
	SubscriberNodeId uint64 `protobuf:"varint,1,opt,name=subscriber_node_id,json=subscriberNodeId,proto3" json:"subscriber_node_id,omitempty"`
	Unsubscribe      bool   `protobuf:"varint,2,opt,name=unsubscribe,proto3" json:"unsubscribe,omitempty"` // false = subscribe, true = unsubscribe
	Discovery        bool   `protobuf:"varint,3,opt,name=discovery,proto3" json:"discovery,omitempty"`     // true = anti-entropy probe, just NACK back with tips, don't store
	// true = pub/sub ephemeral announce: receiver registers subscriber in
	// per-peer table, does not store, does not NACK, does not index.
	Ephemeral bool `protobuf:"varint,4,opt,name=ephemeral,proto3" json:"ephemeral,omitempty"`
	// contains filtered or unexported fields
}

SubscriptionEffect declares interest (or loss of interest) in a key. Fully commutative with all other effects.

func (*SubscriptionEffect) Descriptor deprecated

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

Deprecated: Use SubscriptionEffect.ProtoReflect.Descriptor instead.

func (*SubscriptionEffect) GetDiscovery

func (x *SubscriptionEffect) GetDiscovery() bool

func (*SubscriptionEffect) GetEphemeral

func (x *SubscriptionEffect) GetEphemeral() bool

func (*SubscriptionEffect) GetSubscriberNodeId

func (x *SubscriptionEffect) GetSubscriberNodeId() uint64

func (*SubscriptionEffect) GetUnsubscribe

func (x *SubscriptionEffect) GetUnsubscribe() bool

func (*SubscriptionEffect) ProtoMessage

func (*SubscriptionEffect) ProtoMessage()

func (*SubscriptionEffect) ProtoReflect

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

func (*SubscriptionEffect) Reset

func (x *SubscriptionEffect) Reset()

func (*SubscriptionEffect) String

func (x *SubscriptionEffect) String() string

type TransactionalBindEffect

type TransactionalBindEffect struct {
	Keys             []*TransactionalBindEffect_KeyBind `protobuf:"bytes,1,rep,name=keys,proto3" json:"keys,omitempty"`
	TxnHlc           *timestamppb.Timestamp             `protobuf:"bytes,2,opt,name=txn_hlc,json=txnHlc,proto3" json:"txn_hlc,omitempty"`                                  // originator HLC for FWW
	OriginatorNodeId uint64                             `protobuf:"varint,3,opt,name=originator_node_id,json=originatorNodeId,proto3" json:"originator_node_id,omitempty"` // originator node
	AbortDeps        []*EffectRef                       `protobuf:"bytes,4,rep,name=abort_deps,json=abortDeps,proto3" json:"abort_deps,omitempty"`                         // competing tx effects being folded
	// contains filtered or unexported fields
}

TransactionalBindEffect atomically joins branches across multiple keys.

func (*TransactionalBindEffect) Descriptor deprecated

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

Deprecated: Use TransactionalBindEffect.ProtoReflect.Descriptor instead.

func (*TransactionalBindEffect) GetAbortDeps

func (x *TransactionalBindEffect) GetAbortDeps() []*EffectRef

func (*TransactionalBindEffect) GetKeys

func (*TransactionalBindEffect) GetOriginatorNodeId

func (x *TransactionalBindEffect) GetOriginatorNodeId() uint64

func (*TransactionalBindEffect) GetTxnHlc

func (*TransactionalBindEffect) ProtoMessage

func (*TransactionalBindEffect) ProtoMessage()

func (*TransactionalBindEffect) ProtoReflect

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

func (*TransactionalBindEffect) Reset

func (x *TransactionalBindEffect) Reset()

func (*TransactionalBindEffect) String

func (x *TransactionalBindEffect) String() string

type TransactionalBindEffect_KeyBind

type TransactionalBindEffect_KeyBind struct {
	Key          []byte       `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	Heads        []uint64     `protobuf:"varint,2,rep,packed,name=heads,proto3" json:"heads,omitempty"`                           // branch tips for this key
	ConsumedTips []*EffectRef `protobuf:"bytes,3,rep,name=consumed_tips,json=consumedTips,proto3" json:"consumed_tips,omitempty"` // tips at tx start (for fork identification)
	NewTip       *EffectRef   `protobuf:"bytes,4,opt,name=new_tip,json=newTip,proto3" json:"new_tip,omitempty"`                   // last effect offset per key
	// contains filtered or unexported fields
}

func (*TransactionalBindEffect_KeyBind) Descriptor deprecated

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

Deprecated: Use TransactionalBindEffect_KeyBind.ProtoReflect.Descriptor instead.

func (*TransactionalBindEffect_KeyBind) GetConsumedTips

func (x *TransactionalBindEffect_KeyBind) GetConsumedTips() []*EffectRef

func (*TransactionalBindEffect_KeyBind) GetHeads

func (x *TransactionalBindEffect_KeyBind) GetHeads() []uint64

func (*TransactionalBindEffect_KeyBind) GetKey

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

func (*TransactionalBindEffect_KeyBind) GetNewTip

func (*TransactionalBindEffect_KeyBind) ProtoMessage

func (*TransactionalBindEffect_KeyBind) ProtoMessage()

func (*TransactionalBindEffect_KeyBind) ProtoReflect

func (*TransactionalBindEffect_KeyBind) Reset

func (*TransactionalBindEffect_KeyBind) String

type TypedValue

type TypedValue struct {
	Kind     TypedValue_Kind `protobuf:"varint,1,opt,name=kind,proto3,enum=swytch.cluster.v1.TypedValue_Kind" json:"kind,omitempty"`
	IntVal   int64           `protobuf:"varint,2,opt,name=int_val,json=intVal,proto3" json:"int_val,omitempty"`
	FloatVal float64         `protobuf:"fixed64,3,opt,name=float_val,json=floatVal,proto3" json:"float_val,omitempty"`
	TextVal  string          `protobuf:"bytes,4,opt,name=text_val,json=textVal,proto3" json:"text_val,omitempty"`
	BlobVal  []byte          `protobuf:"bytes,5,opt,name=blob_val,json=blobVal,proto3" json:"blob_val,omitempty"`
	// contains filtered or unexported fields
}

TypedValue is a tagged literal used in Predicate comparisons and in the column tuple of a RowWriteEffect. The Kind tag selects which payload field is meaningful.

func (*TypedValue) Descriptor deprecated

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

Deprecated: Use TypedValue.ProtoReflect.Descriptor instead.

func (*TypedValue) GetBlobVal

func (x *TypedValue) GetBlobVal() []byte

func (*TypedValue) GetFloatVal

func (x *TypedValue) GetFloatVal() float64

func (*TypedValue) GetIntVal

func (x *TypedValue) GetIntVal() int64

func (*TypedValue) GetKind

func (x *TypedValue) GetKind() TypedValue_Kind

func (*TypedValue) GetTextVal

func (x *TypedValue) GetTextVal() string

func (*TypedValue) ProtoMessage

func (*TypedValue) ProtoMessage()

func (*TypedValue) ProtoReflect

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

func (*TypedValue) Reset

func (x *TypedValue) Reset()

func (*TypedValue) String

func (x *TypedValue) String() string

type TypedValue_Kind

type TypedValue_Kind int32
const (
	TypedValue_NULL_VALUE TypedValue_Kind = 0
	TypedValue_INT        TypedValue_Kind = 1
	TypedValue_FLOAT      TypedValue_Kind = 2
	TypedValue_TEXT       TypedValue_Kind = 3
	TypedValue_BLOB       TypedValue_Kind = 4
)

func (TypedValue_Kind) Descriptor

func (TypedValue_Kind) Enum

func (x TypedValue_Kind) Enum() *TypedValue_Kind

func (TypedValue_Kind) EnumDescriptor deprecated

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

Deprecated: Use TypedValue_Kind.Descriptor instead.

func (TypedValue_Kind) Number

func (TypedValue_Kind) String

func (x TypedValue_Kind) String() string

func (TypedValue_Kind) Type

type UnimplementedReplicationServer

type UnimplementedReplicationServer struct {
}

UnimplementedReplicationServer must be embedded to have forward compatible implementations.

func (UnimplementedReplicationServer) Fetch

func (UnimplementedReplicationServer) NotifyStream

type UnsafeReplicationServer

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

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

type ValueType

type ValueType int32
const (
	ValueType_TYPE_UNSPECIFIED ValueType = 0
	ValueType_TYPE_STRING      ValueType = 1
	ValueType_TYPE_LIST        ValueType = 2
	ValueType_TYPE_HASH        ValueType = 3
	ValueType_TYPE_SET         ValueType = 4
	ValueType_TYPE_ZSET        ValueType = 5
	ValueType_TYPE_STREAM      ValueType = 6
	ValueType_TYPE_HLL         ValueType = 7
	ValueType_TYPE_BITMAP      ValueType = 8
	ValueType_TYPE_GEO         ValueType = 9
	ValueType_TYPE_JSON        ValueType = 10 // JSON key; root is a scalar leaf
	ValueType_TYPE_JSON_OBJECT ValueType = 11 // a JSON object node (ORDERED partition, elements keyed by member name)
	ValueType_TYPE_JSON_ARRAY  ValueType = 12 // a JSON array node (ORDERED partition, elements keyed by generated id)
)

func (ValueType) Descriptor

func (ValueType) Descriptor() protoreflect.EnumDescriptor

func (ValueType) Enum

func (x ValueType) Enum() *ValueType

func (ValueType) EnumDescriptor deprecated

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

Deprecated: Use ValueType.Descriptor instead.

func (ValueType) Number

func (x ValueType) Number() protoreflect.EnumNumber

func (ValueType) String

func (x ValueType) String() string

func (ValueType) Type

type Verdict

type Verdict int32

Verdict is the adjudication outcome for a transaction recorded in a snapshot. Populated only by winners (originators on commit). Aborters never emit.

const (
	Verdict_VERDICT_UNSPECIFIED Verdict = 0
	Verdict_WON                 Verdict = 1
	Verdict_LOST                Verdict = 2
)

func (Verdict) Descriptor

func (Verdict) Descriptor() protoreflect.EnumDescriptor

func (Verdict) Enum

func (x Verdict) Enum() *Verdict

func (Verdict) EnumDescriptor deprecated

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

Deprecated: Use Verdict.Descriptor instead.

func (Verdict) Number

func (x Verdict) Number() protoreflect.EnumNumber

func (Verdict) String

func (x Verdict) String() string

func (Verdict) Type

func (Verdict) Type() protoreflect.EnumType

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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