From c6dea9fab5342f0b2bca3b4985a3cb861c975f14 Mon Sep 17 00:00:00 2001 From: Julien Sagot Date: Thu, 7 Nov 2024 17:02:33 +0100 Subject: [PATCH] Profiler: cleaner reset_profilers function --- src/lib_base/profiler.mli | 2 +- src/lib_shell/chain_validator.ml | 20 ++++++++++---------- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/src/lib_base/profiler.mli b/src/lib_base/profiler.mli index e7cf0f739cef..b747f3720e84 100644 --- a/src/lib_base/profiler.mli +++ b/src/lib_base/profiler.mli @@ -365,7 +365,7 @@ type 'a section_maker = 'a * metadata -> unit Creates a function to open a new section (and close the one opened before) using [record] function when a new entity is encountered. - @param verbosity - usual verbosity argument + @param verbosity - usual verbosity argument. Defaults to [Notice] @param equal - used for entities comparison. @param to_string - used for labeling the entity when using the [record] function. @param profiler - profiler instance used to track sections and record profiling data. *) diff --git a/src/lib_shell/chain_validator.ml b/src/lib_shell/chain_validator.ml index 085879303c5e..21185f83fc4d 100644 --- a/src/lib_shell/chain_validator.ml +++ b/src/lib_shell/chain_validator.ml @@ -465,7 +465,7 @@ let may_synchronise_context synchronisation_state chain_store = Context_ops.sync context_index else Lwt.return_unit -let[@warning "-32"] reset_profilers block = +let[@warning "-32"] reset_profilers = let profilers = Shell_profiling. [ @@ -478,14 +478,14 @@ let[@warning "-32"] reset_profilers block = Tezos_protocol_environment.Environment_profiler.context_ops_profiler; ] in - List.iter - (fun profiler -> - (try Tezos_base.Profiler.stop profiler with _ -> ()) ; - Tezos_base.Profiler.record - profiler - Notice - (Block_hash.to_b58check (Store.Block.hash block), [])) - profilers + let reset_sections = + let to_string b = Block_hash.to_b58check (Store.Block.hash b) in + List.map + (Tezos_base.Profiler.section_maker Store.Block.equal to_string) + profilers + in + fun block -> + List.iter (fun reset_section -> reset_section block) reset_sections let on_validation_request w peer start_testchain active_chains spawn_child block = @@ -507,7 +507,7 @@ let on_validation_request w peer start_testchain active_chains spawn_child block if not accepted_head then return Ignored_head else let* previous = Store.Chain.set_head chain_store block in - () [@profiler.custom reset_profilers block] ; + () [@profiler.custom reset_profilers (block, [])] ; let () = if is_bootstrapped nv then Distributed_db.Advertise.current_head nv.chain_db block -- GitLab