solana-with-rpc-optimizations/core
behzad nouri eff59193db
enforces that LAST_SHRED_IN_SLOT is also DATA_COMPLETE_SHRED (#24892)
A data shred cannot be LAST_SHRED_IN_SLOT if not also DATA_COMPLETE_SHRED.
So LAST_SHRED_IN_SLOT should also imply DATA_COMPLETE_SHRED:
https://github.com/solana-labs/solana/blob/74b586ae7/ledger/src/shredder.rs#L116-L117
https://github.com/solana-labs/solana/blob/74b586ae7/core/src/broadcast_stage/standard_broadcast_run.rs#L80-L81

However current shred constructs allow specifying a shred which is
LAST_SHRED_IN_SLOT but not DATA_COMPLETE_SHRED:
https://github.com/solana-labs/solana/blob/74b586ae7/ledger/src/shred.rs#L117-L118
https://github.com/solana-labs/solana/blob/74b586ae7/ledger/src/shred.rs#L272-L273

The commit updates ShredFlags so that if a shred is not
DATA_COMPLETE_SHRED it cannot be LAST_SHRED_IN_SLOT either.
2022-05-02 23:33:53 +00:00
..
benches enforces that LAST_SHRED_IN_SLOT is also DATA_COMPLETE_SHRED (#24892) 2022-05-02 23:33:53 +00:00
src enforces that LAST_SHRED_IN_SLOT is also DATA_COMPLETE_SHRED (#24892) 2022-05-02 23:33:53 +00:00
tests Update all BankForks methods to return owned values (#24801) 2022-04-28 18:51:00 +00:00
.gitignore
Cargo.toml chore: bump etcd-client from 0.9.0 to 0.9.1 (#24774) 2022-04-28 12:30:37 -06:00
build.rs