From 7754a042ed80c7d8e2391925a8a6ae87a7610c8e Mon Sep 17 00:00:00 2001 From: metamuffin Date: Mon, 9 Feb 2026 14:37:50 +0100 Subject: fix match index --- database/src/kv/binning.rs | 4 ++-- database/src/kv/index.rs | 1 + database/src/kv/mod.rs | 4 ++-- 3 files changed, 5 insertions(+), 4 deletions(-) (limited to 'database/src/kv') diff --git a/database/src/kv/binning.rs b/database/src/kv/binning.rs index 1057a28..42e58fc 100644 --- a/database/src/kv/binning.rs +++ b/database/src/kv/binning.rs @@ -40,7 +40,7 @@ impl BinningComponent { let mut new_out = Vec::new(); for value in path.get_matching_values(ob) { for mut co in keys.clone() { - co.extend((co.len() as u32).to_be_bytes()); + co.extend((value.len() as u32).to_be_bytes()); co.extend(value); new_out.push(co); } @@ -88,7 +88,7 @@ impl Filter { Filter::Match(path, value) => { vec![vec![(BinningComponent::Match(path.to_owned()), { let mut co = Vec::new(); - co.extend((co.len() as u32).to_be_bytes()); + co.extend((value.len() as u32).to_be_bytes()); co.extend(value); co })]] diff --git a/database/src/kv/index.rs b/database/src/kv/index.rs index 23b8349..81a4f55 100644 --- a/database/src/kv/index.rs +++ b/database/src/kv/index.rs @@ -63,6 +63,7 @@ pub fn iter_index<'a>( prefix: Vec, sort: &Sort, ) -> Result)>> + 'a>> { + eprintln!("{prefix:?}"); Ok(match sort { Sort::None => Box::new( PrefixIterator { diff --git a/database/src/kv/mod.rs b/database/src/kv/mod.rs index 9cb05fc..8d42ec7 100644 --- a/database/src/kv/mod.rs +++ b/database/src/kv/mod.rs @@ -246,7 +246,7 @@ mod test { } #[test] - pub fn filter() -> Result<()> { + pub fn query_match() -> Result<()> { let db = jellykv::memory::new(); let mut rows = [0, 0, 0]; @@ -268,7 +268,7 @@ mod test { Ok(()) })?; - assert_eq!(result.unwrap(), 0); + assert_eq!(result, Some(rows[0])); Ok(()) } } -- cgit v1.3