change epoch change slot

This commit is contained in:
musitdev 2023-10-08 20:46:27 +02:00
parent 1c6aa5fe8b
commit 78008a6255
2 changed files with 8 additions and 1 deletions

View File

@ -50,6 +50,9 @@ yellowstone-grpc-proto = { path = "../../yellowstone-grpc/yellowstone-grpc-proto
#yellowstone-grpc-client = "1.8.0+solana.1.16.1"
#yellowstone-grpc-proto = "1.8.0+solana.1.16.1"
#yellowstone-grpc-client = "1.11.0+solana.1.16.14"
#yellowstone-grpc-proto = "1.10.0+solana.1.16.14"
solana-sdk = "1.16.14"
solana-client = "1.16.14"
solana-ledger = "1.16.14"

View File

@ -152,7 +152,11 @@ impl CurrentEpochSlotState {
}
fn manage_change_epoch(&mut self) -> Option<LeaderScheduleEvent> {
if self.current_slot.confirmed_slot > self.current_epoch_end_slot() {
//execute leaderschedule calculus at the last slot of the current epoch.
//account change of the slot has been send.
//first epoch slot send all stake change and during this send no slot is send.
//to avoid to delay too much the schdule, start the calculus at the end of the epoch.
if self.current_slot.confirmed_slot >= self.current_epoch_end_slot() {
log::info!("Change epoch at slot:{}", self.current_slot.confirmed_slot);
self.current_epoch_value = self.get_current_epoch().get_next_epoch(&self);