solana/core/tests
behzad nouri fa86a335b0
implements cursor for gossip crds table queries (#16952)
VersionedCrdsValue.insert_timestamp is used for fetching crds values
inserted since last query:
https://github.com/solana-labs/solana/blob/ec37a843a/core/src/cluster_info.rs#L1197-L1215
https://github.com/solana-labs/solana/blob/ec37a843a/core/src/cluster_info.rs#L1274-L1298

So it is crucial that insert_timestamp does not go backward in time when
new values are inserted into the table. However std::time::SystemTime is
not monotonic, or due to workload, lock contention, thread scheduling,
etc, ... new values may be inserted with a stalled timestamp way in the
past. Additionally, reading system time for the above purpose is
inefficient/unnecessary.

This commit adds an ordinal index to crds values indicating their insert
order. Additionally, it implements a new Cursor type for fetching values
inserted since last query.
2021-05-06 14:04:17 +00:00
..
client.rs Cli: move airdrop to rpc requests (#16557) 2021-04-15 06:25:23 +00:00
cluster_info.rs Re-allow clippy::integer_arithmetic at crate-level 2021-02-17 13:55:08 -07:00
crds_gossip.rs validates gossip addresses before sending pull-requests 2021-05-03 18:21:06 +00:00
fork-selection.rs Re-allow clippy::integer_arithmetic at crate-level 2021-02-17 13:55:08 -07:00
gossip.rs implements cursor for gossip crds table queries (#16952) 2021-05-06 14:04:17 +00:00
ledger_cleanup.rs Re-allow clippy::integer_arithmetic at crate-level 2021-02-17 13:55:08 -07:00
rpc.rs Add TPU client for sending txs to the current leader tpu port (#16736) 2021-04-23 09:35:12 +08:00
snapshots.rs Pacify clippy 2021-02-19 20:08:41 -08:00