Skip to content

Commit

Permalink
chore: use entry in nippy code
Browse files Browse the repository at this point in the history
  • Loading branch information
DaniPopes committed Feb 22, 2024
1 parent 0305a4e commit 0ddf810
Showing 1 changed file with 12 additions and 11 deletions.
23 changes: 12 additions & 11 deletions crates/storage/provider/src/providers/snapshot/manager.rs
Expand Up @@ -156,18 +156,19 @@ impl SnapshotProvider {
tx_range: &RangeInclusive<u64>,
) -> ProviderResult<SnapshotJarProvider<'_>> {
let key = (*block_range.end(), segment);
if let Some(jar) = self.map.get(&key) {
Ok(jar.into())
} else {
let path = self.path.join(segment.filename(block_range, tx_range));
let mut jar = NippyJar::load(&path)?;
if self.load_filters {
jar.load_filters()?;
let entry = match self.map.entry(key) {
dashmap::mapref::entry::Entry::Occupied(entry) => entry.into_ref(),
dashmap::mapref::entry::Entry::Vacant(entry) => {
let path = self.path.join(segment.filename(block_range, tx_range));
let mut jar = NippyJar::load(&path)?;
if self.load_filters {
jar.load_filters()?;
}
let loaded_jar = LoadedJar::new(jar)?;
entry.insert(loaded_jar)
}
let loaded_jar = LoadedJar::new(jar)?;
self.map.insert(key, loaded_jar);
Ok(self.map.get(&key).unwrap().into())
}
};
Ok(entry.downgrade().into())
}

/// Gets a snapshot segment's block range and transaction range from the provider inner block
Expand Down

0 comments on commit 0ddf810

Please sign in to comment.