package octez-l2-libs

  1. Overview
  2. Docs
Octez layer2 libraries

Install

Dune Dependency

Authors

Maintainers

Sources

tezos-18.0.tar.gz
sha256=dbc3b675aee59c2c574e5d0a771193a2ecfca31e7a5bc5aed66598080596ce1c
sha512=b97ed762b9d24744305c358af0d20f394376b64bfdd758dd4a81775326caf445caa57c4f6445da3dd6468ff492de18e4c14af6f374dfcbb7e4d64b7b720e5e2a

doc/octez-l2-libs.layer2_store/Tezos_layer2_store/Indexed_store/index.html

Module Tezos_layer2_store.Indexed_storeSource

This library provides functors to build various kinds of stores using mirage's index and Octez data-encoding libraries.

It is tailored to build stores for the Layer 2 nodes of Tezos (Tx-rollups and Smart rollups).

The stores built with this library support concurrent accesses thanks to the use of the light scheduler provided by Lwt_idle_waiter for exclusive write access.

Signatures

Sourcemodule type SINGLETON_STORE = sig ... end

A store for single updatable values. Values are stored in a file on disk and are kept in memory in a cache.

Sourcemodule type INDEXABLE_STORE = sig ... end

An index store mapping keys to values. It uses an index file internally.

Sourcemodule type INDEXABLE_REMOVABLE_STORE = sig ... end

An index store mapping keys to values. Keys are associated to optional values in the index which allows them to be removed.

Sourcemodule type INDEXED_FILE = sig ... end

An indexed file (i.e. a file and an index) mapping keys to values. Contrary to INDEXABLE_STORE, the values can vary in size. Internally, values are stored, concatenated, in a append only file. The index file associates keys to offsets in this file (and a header to retrieve information more efficiently).

Sourcemodule type SIMPLE_INDEXED_FILE = sig ... end

Same as INDEXED_FILE but where headers are extracted from values.

Sourcemodule type NAME = sig ... end

Names for stores.

Sourcemodule type ENCODABLE_VALUE = sig ... end

Values that can be encoded.

Sourcemodule type FIXED_ENCODABLE_VALUE = sig ... end

Values that can be encoded and whose encoding is a fixed size.

Sourcemodule type ENCODABLE_VALUE_HEADER = sig ... end

Values with a given fixed size header.

Functors

Sourcemodule Make_indexable (_ : NAME) (K : Index.Key.S) (V : Index.Value.S) : INDEXABLE_STORE with type key := K.t and type value := V.t
Sourcemodule Make_indexed_file (_ : NAME) (K : Index.Key.S) (V : ENCODABLE_VALUE_HEADER) : INDEXED_FILE with type key := K.t and type value := V.t and type header := V.Header.t
Sourcemodule Make_simple_indexed_file (_ : NAME) (K : Index.Key.S) (V : sig ... end) : SIMPLE_INDEXED_FILE with type key := K.t and type value := V.t and type header := V.Header.t

Helper functors

Sourcemodule Make_index_key (E : sig ... end) : Index.Key.S with type t = E.t
OCaml

Innovation. Community. Security.