fix(prune): respect timeout in account and storage history pruning #19706
+49
−10
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #19685 #19682
Added timeout checking to
prune_history_indicesfunction by passingPruneLimiterand checkingis_time_limit_reached()in both the outer and inner loops. The function now returns a tuple(PrunedIndices, bool)toindicate completion status, allowing the pruner to resume from checkpoint on the next run when interrupted by timeout.
This prevents the pruner from holding locks for 800ms-2s and ensures the configured timeout is respected as a hard limit rather than a soft limit.