Skip to content
This repository was archived by the owner on Jan 22, 2025. It is now read-only.

Actively manage dead slots in AncestorHashesService #18912

Merged
merged 4 commits into from
Aug 2, 2021

Conversation

carllin
Copy link
Contributor

@carllin carllin commented Jul 27, 2021

Problem

AncestorHashesService doesn't currently make ancestor requests

Summary of Changes

  1. AncestorHashesService listens for dead slots from ReplayStage, added to a dead pool dead_slot_pool
  2. DuplicateConfirmed and EpochSlots frozen dead slots will be moved from the dead_slot_pool to an eligible repair pool, repairable_dead_slot_pool
  3. repairable_dead_slot_pool slots are removed once an AncestorHashes request is made for that slot. The status of the request is tracked in ancestor_hashes_request_statuses
  4. On request completion, regardless of result, it is removed from the ancestor_hashes_request_statuses.
  5. If the request fails, the slot is moved back to the repairable_dead_slot_pool, and will be retried later.

Fixes #
#18783

@carllin carllin requested review from jstarry and AshwinSekar July 27, 2021 04:13
@carllin carllin force-pushed the FixRepairService branch from 04b187c to e6ca84a Compare July 27, 2021 04:25
@carllin carllin force-pushed the FixRepairService branch from e6ca84a to 6070330 Compare July 27, 2021 04:46
@codecov
Copy link

codecov bot commented Jul 28, 2021

Codecov Report

Merging #18912 (b503924) into master (c0704d4) will increase coverage by 0.1%.
The diff coverage is 96.2%.

@@            Coverage Diff            @@
##           master   #18912     +/-   ##
=========================================
+ Coverage    82.8%    82.9%   +0.1%     
=========================================
  Files         444      444             
  Lines      126716   127275    +559     
=========================================
+ Hits       104941   105607    +666     
+ Misses      21775    21668    -107     

@carllin carllin force-pushed the FixRepairService branch 2 times, most recently from 9cc3de5 to 16d6f16 Compare July 28, 2021 22:23
@carllin carllin force-pushed the FixRepairService branch from 16d6f16 to 323bbe7 Compare July 28, 2021 23:49
AshwinSekar
AshwinSekar previously approved these changes Jul 30, 2021
Copy link
Contributor

@AshwinSekar AshwinSekar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good to me!

@carllin carllin force-pushed the FixRepairService branch from 4ca785d to 4d71642 Compare July 30, 2021 05:50
@mergify mergify bot dismissed AshwinSekar’s stale review July 30, 2021 05:51

Pull request has been modified.

@carllin carllin force-pushed the FixRepairService branch from 4d71642 to b503924 Compare July 30, 2021 21:52
repairable_dead_slot_pool: HashSet<Slot>,
request_throttle: Vec<u64>,
repair_stats: AncestorRepairRequestsStats,
_duplicate_slots_reset_receiver: DuplicateSlotsResetReceiver,
Copy link
Contributor

@ryoqun ryoqun Apr 24, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

here xref: #31319 (comment)

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants