[][src]Module solana_sdk::timing

The timing module provides std::time utility functions.

Constants

DEFAULT_SLOTS_PER_EPOCH
DEFAULT_SLOTS_PER_SEGMENT
DEFAULT_SLOTS_PER_TURN
DEFAULT_TICKS_PER_SECOND
DEFAULT_TICKS_PER_SLOT
MAX_HASH_AGE_IN_SECONDS

The time window of recent block hash values that the bank will track the signatures of over. Once the bank discards a block hash, it will reject any transactions that use that recent_blockhash in a transaction. Lowering this value reduces memory consumption, but requires clients to update its recent_blockhash more frequently. Raising the value lengthens the time a client must wait to be certain a missing transaction will not be processed by the network.

MAX_PROCESSING_AGE
MAX_RECENT_BLOCKHASHES
MAX_TRANSACTION_FORWARDING_DELAY

More delay is expected if CUDA is not enabled (as signature verification takes longer)

NUM_CONSECUTIVE_LEADER_SLOTS

Functions

duration_as_ms
duration_as_ns
duration_as_s
duration_as_us
get_complete_segment_from_slot

Given a slot returns the latest complete segment, if no segment could possibly be complete for a given slot it returns None (i.e if slot < slots_per_segment)

get_segment_from_slot

Converts a slot to a storage segment. Does not indicate that a segment is complete.

timestamp

Type Definitions

Epoch

Epoch is a unit of time a given leader schedule is honored, some number of Slots. Use a u64 to count them.

Segment

A segment is some number of slots stored by replicators

Slot

Slot is a unit of time given to a leader for encoding, is some some number of Ticks long. Use a u64 to count them.