package octez-l2-libs

  1. Overview
  2. Docs
Octez layer2 libraries

Install

Dune Dependency

Authors

Maintainers

Sources

octez-19.1.tar.gz
sha256=55ea1fb8bb3273a7fc270ca8f650d45c56449665619482aad9bc12f3ea736b7e
sha512=fec850fc2d17d7490bbabd5147d62aad13b3aaed8774270f8a38ab419670ed03e0fd30cf8642a97984eca5c2446726fe590ad99c015f7ec50919dc7652f25053

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 INDEX_KEY = sig ... end

Values that can be used as keys for indices.

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) (V : Index.Value.S) : INDEXABLE_STORE with type key := K.t and type value := V.t
Sourcemodule Make_indexed_file (_ : NAME) (K : INDEX_KEY) (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) (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 with type t = E.t
OCaml

Innovation. Community. Security.