Module Tezos_dal_node_lib

module Accuser : sig ... end
module Amplificator : sig ... end

This module is about shard amplification, a feature allowing DAL nodes which receive enough shards of a given slot to contribute to the DAL reliability by reconstructing the slot, recomputing all the shards, and republishing the missing shards on the DAL network.

module Block_handler : sig ... end
module Cli : sig ... end
module Committee_cache : sig ... end

Cache for the DAL committee.

module Configuration_file : sig ... end
module Constants : sig ... end
module Crawler : sig ... end

This module maintains information about the layer 1 chain.

module Daemon : sig ... end
module Dal_metrics : sig ... end
module Dal_node_client : sig ... end
module Dal_plugin : sig ... end
module Dal_profiler : sig ... end
module Dal_proto_types : sig ... end
module Dal_store_sqlite3 : sig ... end
module Dal_store_sqlite3_events : sig ... end
module Errors : sig ... end
module Event : sig ... end
module History_check : sig ... end
module Kvs_skip_list_cells_store : sig ... end

This module instantiates the key value store to provide facilities for storing and retrieving the cells of the DAL skip list. The store maintains:

module L1_crawler_status : sig ... end
module L1_helpers : sig ... end
module Message_validation : sig ... end
module Metrics : sig ... end
module Node_context : sig ... end
module Opentelemetry_helpers : sig ... end
module Process_worker : sig ... end
module Profile_manager : sig ... end

This module provides different handlers related to DAL profiles.

module Proto_plugins : sig ... end

This module provides functionality related to protocol plugins.

module RPC_server : sig ... end
module Rpc_context : sig ... end
module Single_value_store : sig ... end

Helper module to load/store a single value from/to disk.

module Slot_manager : sig ... end

This module provides different handlers related to DAL slots.

module Store : sig ... end

This module handles the on-disk storage of the DAL node. We rely on the Key_value_store module from lib_stdlib_unix. For shards storage, we rely on a cache mechanism in the case of non-prover profiles.

module Store_cleanup : sig ... end
module Store_migrations : sig ... end
module Transport_layer_parameters : sig ... end
module Value_size_hooks : sig ... end

The encoded_value_size required by Key_value_store.layout is known when the daemon loads a protocol, after the store is initialized. We use the closures like set_share_size to perform delayed protocol-specific parameter passing.

module Worker_parameters : sig ... end