getEpochInfo RPC endpoint now includes the current block height
This commit is contained in:
@ -169,6 +169,9 @@ pub struct RpcEpochInfo {
|
|||||||
|
|
||||||
/// The absolute current slot
|
/// The absolute current slot
|
||||||
pub absolute_slot: Slot,
|
pub absolute_slot: Slot,
|
||||||
|
|
||||||
|
/// The current block height
|
||||||
|
pub block_height: u64,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Serialize, Deserialize, Clone, Debug)]
|
#[derive(Serialize, Deserialize, Clone, Debug)]
|
||||||
|
@ -1188,12 +1188,14 @@ impl RpcSol for RpcSolImpl {
|
|||||||
let epoch_schedule = bank.epoch_schedule();
|
let epoch_schedule = bank.epoch_schedule();
|
||||||
|
|
||||||
let slot = bank.slot();
|
let slot = bank.slot();
|
||||||
|
let block_height = bank.block_height();
|
||||||
let (epoch, slot_index) = epoch_schedule.get_epoch_and_slot_index(slot);
|
let (epoch, slot_index) = epoch_schedule.get_epoch_and_slot_index(slot);
|
||||||
Ok(RpcEpochInfo {
|
Ok(RpcEpochInfo {
|
||||||
epoch,
|
epoch,
|
||||||
slot_index,
|
slot_index,
|
||||||
slots_in_epoch: epoch_schedule.get_slots_in_epoch(epoch),
|
slots_in_epoch: epoch_schedule.get_slots_in_epoch(epoch),
|
||||||
absolute_slot: slot,
|
absolute_slot: slot,
|
||||||
|
block_height,
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -451,6 +451,7 @@ Returns information about the current epoch
|
|||||||
The result field will be an object with the following fields:
|
The result field will be an object with the following fields:
|
||||||
|
|
||||||
* `absoluteSlot: <u64>`, the current slot
|
* `absoluteSlot: <u64>`, the current slot
|
||||||
|
* `blockHeight: <u64>`, the current block height
|
||||||
* `epoch: <u64>`, the current epoch
|
* `epoch: <u64>`, the current epoch
|
||||||
* `slotIndex: <u64>`, the current slot relative to the start of 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
|
* `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
|
curl -X POST -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","id":1, "method":"getEpochInfo"}' http://localhost:8899
|
||||||
|
|
||||||
// Result
|
// 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
|
### getEpochSchedule
|
||||||
|
Reference in New Issue
Block a user