Skip to content

Commit

Permalink
fix: dedup bad indexer errors
Browse files Browse the repository at this point in the history
  • Loading branch information
Theodus committed Dec 15, 2023
1 parent 561a010 commit 86f70bc
Showing 1 changed file with 5 additions and 3 deletions.
8 changes: 5 additions & 3 deletions graph-gateway/src/errors.rs
Original file line number Diff line number Diff line change
Expand Up @@ -81,11 +81,13 @@ impl std::fmt::Display for IndexerErrors {
impl IndexerErrors {
/// Sort errors in order of descending occurrence for display.
pub fn new<Errors: IntoIterator<Item = IndexerError>>(errors: Errors) -> Self {
let mut errors = errors.into_iter().collect_vec();
let mut occurrences: BTreeMap<IndexerError, usize> = Default::default();
let errors = errors.into_iter().collect_vec();
let mut occurrences: BTreeMap<&IndexerError, usize> = Default::default();
for error in &errors {
*occurrences.entry(error.clone()).or_insert(0) += 1;
*occurrences.entry(error).or_insert(0) += 1;
}
// dedup
let mut errors = occurrences.keys().map(|&e| e.clone()).collect_vec();
errors.sort_unstable_by_key(|error| *occurrences.get(error).unwrap());
errors.reverse();
Self(errors)
Expand Down

0 comments on commit 86f70bc

Please sign in to comment.