getEpochInfo RPC endpoint now includes the current block height

This commit is contained in:
Michael Vines
2020-07-21 14:43:48 -07:00
parent 4bd018e68b
commit 6fbad24477
3 changed files with 7 additions and 1 deletions

View File

@ -169,6 +169,9 @@ pub struct RpcEpochInfo {
/// The absolute current slot
pub absolute_slot: Slot,
/// The current block height
pub block_height: u64,
}
#[derive(Serialize, Deserialize, Clone, Debug)]

View File

@ -1188,12 +1188,14 @@ impl RpcSol for RpcSolImpl {
let epoch_schedule = bank.epoch_schedule();
let slot = bank.slot();
let block_height = bank.block_height();
let (epoch, slot_index) = epoch_schedule.get_epoch_and_slot_index(slot);
Ok(RpcEpochInfo {
epoch,
slot_index,
slots_in_epoch: epoch_schedule.get_slots_in_epoch(epoch),
absolute_slot: slot,
block_height,
})
}

View File

@ -451,6 +451,7 @@ Returns information about the current epoch
The result field will be an object with the following fields:
* `absoluteSlot: <u64>`, the current slot
* `blockHeight: <u64>`, the current block height
* `epoch: <u64>`, the current epoch
* `slotIndex: <u64>`, the current slot relative to the start of the current epoch
* `slotsInEpoch: <u64>`, the number of slots in this epoch
@ -462,7 +463,7 @@ The result field will be an object with the following fields:
curl -X POST -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","id":1, "method":"getEpochInfo"}' http://localhost:8899
// Result
{"jsonrpc":"2.0","result":{"absoluteSlot":166598,"epoch":27,"slotIndex":2790,"slotsInEpoch":8192},"id":1}
{"jsonrpc":"2.0","result":{"absoluteSlot":166598,"blockHeight": 166500, "epoch":27,"slotIndex":2790,"slotsInEpoch":8192},"id":1}
```
### getEpochSchedule