Vdr.TSProj (veidrodelis v0.1.6)

Copy Markdown View Source

Redis replication stream processor storing data in TS (Rust-based storage).

This module provides Redis replication stream processing using TS (Rust-based storage) for efficient key-value storage. Currently supports sets, sorted sets, lists, hashes and strings.

Summary

Types

key()

@type key() :: binary()

t()

@type t() :: %Vdr.TSProj{
  id: term(),
  in_transaction: boolean(),
  monitors: %{required(pid()) => reference()},
  new_ts_storage: reference() | nil,
  ready: boolean(),
  ts_storage: reference(),
  tx_buffer: list(),
  watch: Vdr.TS.Watch.t()
}

value()

@type value() :: binary()

Functions

lua_load(map, script)

@spec lua_load(%{ts_storage: reference()}, binary()) ::
  {:ok, binary()} | {:error, term()}

read_tx(map, db, commands_or_script)

@spec read_tx(
  %{ts_storage: reference(), ready: boolean()},
  non_neg_integer(),
  [tuple()] | binary()
) :: {:ok, [term()]} | {:error, term()}

start_link(opts)