solana/ledger
Yueh-Hsuan Chiang 6d12bb6ec3
Fix a corner-case panic in get_entries_in_data_block() (#27195)
#### Problem
get_entries_in_data_block() panics when there's inconsistency between
slot_meta and data_shred.

However, as we don't lock on reads, reading across multiple column families is
not atomic (especially for older slots) and thus does not guarantee consistency
as the background cleanup service could purge the slot in the middle.  Such
panic was reported in #26980 when the validator serves a high load of RPC calls.

#### Summary of Changes
This PR makes get_entries_in_data_block() panic only when the inconsistency
between slot-meta and data-shred happens on a slot older than lowest_cleanup_slot.
2022-08-18 02:37:19 -07:00
..
benches adds support for different variants of ShredCode and ShredData 2022-06-02 18:55:50 +00:00
src Fix a corner-case panic in get_entries_in_data_block() (#27195) 2022-08-18 02:37:19 -07:00
tests removes buffering when generating coding shreds in broadcast (#25807) 2022-08-11 12:44:27 +00:00
.gitignore
Cargo.toml chore: bump futures from 0.3.21 to 0.3.23 (#27182) 2022-08-16 16:29:45 -06:00
build.rs