From e1b81b9981746806b163a9d1498d347f1135d99d Mon Sep 17 00:00:00 2001 From: sreedevk Date: Mon, 14 Jul 2025 01:01:14 +0000 Subject: [PATCH] page hash aggregation method improvement --- src/fileinfo.rs | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/fileinfo.rs b/src/fileinfo.rs index df907f3..1eb6a5b 100644 --- a/src/fileinfo.rs +++ b/src/fileinfo.rs @@ -19,11 +19,10 @@ impl FileInfo { pub fn hash(&self, seed: i64) -> Result { let file = fs::File::open(&self.path)?; let mapper = unsafe { Mmap::map(&file)? }; - let final_hash = mapper.chunks(4096).fold(0u128, |acc, chunk: &[u8]| { - acc.wrapping_add(gxhash128(chunk, seed)) - }); - Ok(final_hash) + Ok(mapper + .chunks(4096) + .fold(0u128, |acc, chunk: &[u8]| acc ^ gxhash128(chunk, seed))) } pub fn initial_page_hash(&self, seed: i64) -> Result {