Tezos_validation.External_validation
type parameters = {
protocol_root : string;
genesis : Tezos_base.TzPervasives.Genesis.t;
readonly : bool;
data_dir : string;
sandbox_parameters : Tezos_base.TzPervasives.Data_encoding.json option;
user_activated_upgrades : Tezos_base.TzPervasives.User_activated.upgrades;
user_activated_protocol_overrides : Tezos_base.TzPervasives.User_activated.protocol_overrides;
operation_metadata_size_limit : Tezos_shell_services.Shell_limits.operation_metadata_size_limit;
internal_events : Tezos_base.Internal_event_config.t;
}
type _ request =
| Apply : {
chain_id : Tezos_base.TzPervasives.Chain_id.t;
block_header : Tezos_base.TzPervasives.Block_header.t;
predecessor_block_header : Tezos_base.TzPervasives.Block_header.t;
predecessor_block_metadata_hash : Tezos_base.TzPervasives.Block_metadata_hash.t
option;
predecessor_ops_metadata_hash : Tezos_base.TzPervasives.Operation_metadata_list_list_hash.t
option;
predecessor_resulting_context_hash : Tezos_base.TzPervasives.Context_hash.t;
operations : Block_validation.operation list list;
max_operations_ttl : int;
should_validate : bool;
simulate : bool;
} -> Block_validation.result request
| Preapply : {
chain_id : Tezos_base.TzPervasives.Chain_id.t;
timestamp : Tezos_base.TzPervasives.Time.Protocol.t;
protocol_data : bytes;
live_blocks : Tezos_base.TzPervasives.Block_hash.Set.t;
live_operations : Tezos_base.TzPervasives.Operation_hash.Set.t;
predecessor_shell_header : Tezos_base.TzPervasives.Block_header.shell_header;
predecessor_hash : Tezos_base.TzPervasives.Block_hash.t;
predecessor_max_operations_ttl : int;
predecessor_block_metadata_hash : Tezos_base.TzPervasives.Block_metadata_hash.t
option;
predecessor_ops_metadata_hash : Tezos_base.TzPervasives.Operation_metadata_list_list_hash.t
option;
predecessor_resulting_context_hash : Tezos_base.TzPervasives.Context_hash.t;
operations : Block_validation.operation list list;
} -> (Tezos_base.TzPervasives.Block_header.shell_header
* Tezos_base.TzPervasives.error Tezos_shell_services.Preapply_result.t
list)
request
| Validate : {
chain_id : Tezos_base.TzPervasives.Chain_id.t;
predecessor_block_header : Tezos_base.TzPervasives.Block_header.t;
predecessor_block_hash : Tezos_base.TzPervasives.Block_hash.t;
predecessor_resulting_context_hash : Tezos_base.TzPervasives.Context_hash.t;
header : Tezos_base.TzPervasives.Block_header.t;
operations : Block_validation.operation list list;
hash : Tezos_base.TzPervasives.Block_hash.t;
} -> unit request
| Commit_genesis : {
chain_id : Tezos_base.TzPervasives.Chain_id.t;
} -> Tezos_base.TzPervasives.Context_hash.t request
| Fork_test_chain : {
chain_id : Tezos_base.TzPervasives.Chain_id.t;
context_hash : Tezos_base.TzPervasives.Context_hash.t;
forked_header : Tezos_base.TzPervasives.Block_header.t;
} -> Tezos_base.TzPervasives.Block_header.t request
| Context_garbage_collection : {
context_hash : Tezos_base.TzPervasives.Context_hash.t;
gc_lockfile_path : string;
} -> unit request
| Context_split : unit request
| Terminate : unit request
| Reconfigure_event_logging : Tezos_base_unix.Internal_event_unix.Configuration.t ->
unit
request
val request_pp : Stdlib.Format.formatter -> 'a request -> unit
val magic : Tezos_base.TzPervasives.Bytes.t
val parameters_encoding : parameters Tezos_base.TzPervasives.Data_encoding.t
val request_encoding : packed_request Tezos_base.TzPervasives.Data_encoding.t
val result_encoding : 'a request -> 'a Tezos_base.TzPervasives.Data_encoding.t
val reconfigure_event_logging_request :
Tezos_base.Internal_event_config.t ->
unit request
val internal_events : parameters -> Tezos_base.Internal_event_config.t
val terminate_request : packed_request
The prefix for the validation socket filename.
Do not use it directly except for documentation purposes; use socket_path
instead.
Get the validation socket path.
socket_dir
is the directory where the file should be put. pid
is the process ID of the validator process.