Skip to content

Commit

Permalink
Merge pull request #1941 from vdice/feat/wasm-cache-fallback
Browse files Browse the repository at this point in the history
feat(loader/cache): add data dir fallback if wasm layer not found
  • Loading branch information
vdice authored Oct 25, 2023
2 parents 5376331 + 8e7f515 commit ef3998b
Showing 1 changed file with 8 additions and 1 deletion.
9 changes: 8 additions & 1 deletion crates/loader/src/cache.rs
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,14 @@ impl Cache {

/// Return the path to a wasm file given its digest.
pub fn wasm_file(&self, digest: impl AsRef<str>) -> Result<PathBuf> {
let path = self.wasm_path(&digest);
// Check the expected wasm directory first; else check the data directory as a fallback.
// (Layers with unknown media types are currently saved to the data directory in client.pull())
// This adds a bit of futureproofing for fetching wasm layers with different/updated media types
// (see WASM_LAYER_MEDIA_TYPE, which is subject to change in future versions).
let mut path = self.wasm_path(&digest);
if !path.exists() {
path = self.data_path(&digest);
}
ensure!(
path.exists(),
"cannot find wasm file for digest {}",
Expand Down

0 comments on commit ef3998b

Please sign in to comment.