ViewstampedReplication.Protocol.Effect (viewstamped_replication v0.1.0)

Copy Markdown View Source

Ordered effects emitted by the pure protocol core.

Summary

Types

t()

@type t() ::
  {:send, replica_id :: term(), ViewstampedReplication.Protocol.Envelope.t()}
  | {:broadcast, ViewstampedReplication.Protocol.Envelope.t()}
  | {:reply, client_route :: term(), ViewstampedReplication.Reply.t()}
  | {:persist, storage_operation :: term()}
  | {:apply, ViewstampedReplication.LogEntry.t()}
  | {:schedule_timer, timer_kind :: atom(), timeout(), timer_token :: term()}
  | {:cancel_timer, timer_kind :: atom()}
  | {:request_state_transfer, replica_id :: term(), Range.t()}
  | {:emit_telemetry, event_name :: [atom()], measurements :: map(),
     metadata :: map()}