Metadata-only ring buffer for recent Stream mutations.
Stream entries can contain application payloads. This log intentionally keeps only command shape, stream key, entry ID/counts, and safe option metadata.
Summary
Functions
Returns a specification to start this module under a supervisor.
Types
@type entry() :: %{ id: non_neg_integer(), timestamp_us: integer(), command: binary(), role: :producer | :consumer | :maintenance, key: binary(), result: binary(), entry_id: binary() | nil, count: non_neg_integer() | nil, field_pairs: non_neg_integer() | nil, trim: binary() | nil, group: binary() | nil, consumer: binary() | nil, nomkstream: boolean() | nil }
Functions
Returns a specification to start this module under a supervisor.
See Supervisor.
@spec get(non_neg_integer() | nil) :: [entry()]
@spec len() :: non_neg_integer()
@spec record_xack(binary(), binary(), non_neg_integer()) :: :ok
@spec record_xadd(binary(), binary(), non_neg_integer(), term(), boolean()) :: :ok
@spec record_xdel(binary(), non_neg_integer()) :: :ok
@spec record_xtrim(binary(), non_neg_integer(), term()) :: :ok
@spec reset() :: :ok
@spec start_link(keyword()) :: GenServer.on_start()