diff options
author | Florian Klink <flokli@flokli.de> | 2023-03-15T23·56+0100 |
---|---|---|
committer | flokli <flokli@flokli.de> | 2023-03-16T13·47+0000 |
commit | 530cb920b5aadc768c0273b8150dc04fdf444359 (patch) | |
tree | 4e43afa13184dcf19d8912a1197d2097e55a65e1 /tvix/store/src/chunkservice/memory.rs | |
parent | ee23220564987771c8e7909ded6fb9853f1d1b0d (diff) |
refactor(tvix/store/chunksvc): use [u8; 32] instead of Vec<u8> r/6015
Change-Id: Ie2b94aa5d69ff2c61fb77e13ae844f81f6270273 Reviewed-on: https://cl.tvl.fyi/c/depot/+/8314 Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su> Autosubmit: flokli <flokli@flokli.de>
Diffstat (limited to 'tvix/store/src/chunkservice/memory.rs')
-rw-r--r-- | tvix/store/src/chunkservice/memory.rs | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/tvix/store/src/chunkservice/memory.rs b/tvix/store/src/chunkservice/memory.rs index d9a5ead4de4a..55e646ea7714 100644 --- a/tvix/store/src/chunkservice/memory.rs +++ b/tvix/store/src/chunkservice/memory.rs @@ -11,18 +11,18 @@ use super::ChunkService; #[derive(Clone, Default)] pub struct MemoryChunkService { - db: Arc<RwLock<HashMap<Vec<u8>, Vec<u8>>>>, + db: Arc<RwLock<HashMap<[u8; 32], Vec<u8>>>>, } impl ChunkService for MemoryChunkService { #[instrument(skip(self, digest), fields(chunk.digest=BASE64.encode(digest)))] - fn has(&self, digest: &[u8]) -> Result<bool, Error> { + fn has(&self, digest: &[u8; 32]) -> Result<bool, Error> { let db = self.db.read().unwrap(); Ok(db.get(digest).is_some()) } #[instrument(skip(self), fields(chunk.digest=BASE64.encode(digest)))] - fn get(&self, digest: &[u8]) -> Result<Option<Vec<u8>>, Error> { + fn get(&self, digest: &[u8; 32]) -> Result<Option<Vec<u8>>, Error> { let db = self.db.read().unwrap(); match db.get(digest) { None => Ok(None), @@ -42,12 +42,12 @@ impl ChunkService for MemoryChunkService { } #[instrument(skip(self, data))] - fn put(&self, data: Vec<u8>) -> Result<Vec<u8>, Error> { - let digest = blake3::hash(&data).as_bytes().to_vec(); + fn put(&self, data: Vec<u8>) -> Result<[u8; 32], Error> { + let digest = blake3::hash(&data); let mut db = self.db.write().unwrap(); - db.insert(digest.clone(), data); + db.insert(digest.as_bytes().clone(), data); - Ok(digest) + Ok(digest.as_bytes().clone()) } } |