rename stuff

main
Ziyang Hu 2 years ago
parent 264c875b8a
commit 9c3c97c32a

@ -723,7 +723,7 @@ impl<'s, S: Storage<'s>> Db<S> {
.encode_as_key(RelationId::SYSTEM);
let tx = self.db.transact(false)?;
let mut collected = vec![];
for kv_res in tx.range_scan_raw(&lower, &upper) {
for kv_res in tx.range_scan(&lower, &upper) {
let (k_slice, v_slice) = kv_res?;
if upper <= k_slice {
break;

@ -205,7 +205,7 @@ impl RelationHandle {
) -> impl Iterator<Item = Result<Tuple>> + 'a {
let lower = Tuple::default().encode_as_key(self.id);
let upper = Tuple::default().encode_as_key(self.id.next());
tx.tx.range_scan(&lower, &upper)
tx.tx.range_scan_tuple(&lower, &upper)
}
pub(crate) fn scan_prefix<'a>(
@ -220,7 +220,7 @@ impl RelationHandle {
let prefix_encoded = Tuple(lower).encode_as_key(self.id);
let upper_encoded = Tuple(upper).encode_as_key(self.id);
// RelationIterator::new(tx, &prefix_encoded, &upper_encoded)
tx.tx.range_scan(&prefix_encoded, &upper_encoded)
tx.tx.range_scan_tuple(&prefix_encoded, &upper_encoded)
}
pub(crate) fn scan_bounded_prefix<'a>(
&self,
@ -236,7 +236,7 @@ impl RelationHandle {
upper_t.0.push(DataValue::Bot);
let lower_encoded = lower_t.encode_as_key(self.id);
let upper_encoded = upper_t.encode_as_key(self.id);
tx.tx.range_scan(&lower_encoded, &upper_encoded)
tx.tx.range_scan_tuple(&lower_encoded, &upper_encoded)
}
}

@ -145,7 +145,7 @@ impl<'s> StoreTx<'s> for MemTx<'s> {
}
}
fn range_scan<'a>(
fn range_scan_tuple<'a>(
&'a self,
lower: &[u8],
upper: &[u8],
@ -167,7 +167,7 @@ impl<'s> StoreTx<'s> for MemTx<'s> {
}
}
fn range_scan_raw<'a>(
fn range_scan<'a>(
&'a self,
lower: &[u8],
upper: &[u8],

@ -2,9 +2,11 @@
* Copyright 2022, The Cozo Project Authors. Licensed under MPL-2.0.
*/
use itertools::Itertools;
use miette::Result;
use crate::data::tuple::Tuple;
use crate::decode_tuple_from_kv;
pub(crate) mod mem;
pub(crate) mod rocks;
@ -56,19 +58,24 @@ pub trait StoreTx<'s> {
fn commit(&mut self) -> Result<()>;
/// Scan on a range. `lower` is inclusive whereas `upper` is exclusive.
/// The default implementation calls [`range_scan_owned`](Self::range_scan_owned) and converts the results.
///
/// The implementation must call [`decode_tuple_from_kv`](crate::decode_tuple_from_kv) to obtain
/// a decoded tuple in the loop of the iterator.
fn range_scan<'a>(
fn range_scan_tuple<'a>(
&'a self,
lower: &[u8],
upper: &[u8],
) -> Box<dyn Iterator<Item = Result<Tuple>> + 'a>
where
's: 'a;
's: 'a {
let it = self.range_scan(lower, upper);
Box::new(it.map_ok(|(k, v)| decode_tuple_from_kv(&k, &v)))
}
/// Scan on a range and return the raw results.
/// `lower` is inclusive whereas `upper` is exclusive.
fn range_scan_raw<'a>(
fn range_scan<'a>(
&'a self,
lower: &[u8],
upper: &[u8],

@ -138,7 +138,7 @@ impl<'s> StoreTx<'s> for RocksDbTx {
Ok(self.db_tx.commit()?)
}
fn range_scan<'a>(
fn range_scan_tuple<'a>(
&'a self,
lower: &[u8],
upper: &[u8],
@ -155,7 +155,7 @@ impl<'s> StoreTx<'s> for RocksDbTx {
})
}
fn range_scan_raw<'a>(
fn range_scan<'a>(
&'a self,
lower: &[u8],
upper: &[u8],

@ -155,7 +155,7 @@ impl<'s> StoreTx<'s> for SledTx {
Ok(())
}
fn range_scan<'a>(
fn range_scan_tuple<'a>(
&'a self,
lower: &[u8],
upper: &[u8],
@ -182,7 +182,7 @@ impl<'s> StoreTx<'s> for SledTx {
}
}
fn range_scan_raw<'a>(
fn range_scan<'a>(
&'a self,
lower: &[u8],
upper: &[u8],

@ -177,7 +177,7 @@ impl<'s> StoreTx<'s> for SqliteTx<'s> {
Ok(())
}
fn range_scan<'a>(
fn range_scan_tuple<'a>(
&'a self,
lower: &[u8],
upper: &[u8],
@ -195,7 +195,7 @@ impl<'s> StoreTx<'s> for SqliteTx<'s> {
Box::new(TupleIter(statement))
}
fn range_scan_raw<'a>(
fn range_scan<'a>(
&'a self,
lower: &[u8],
upper: &[u8],

@ -128,7 +128,7 @@ impl<'s> StoreTx<'s> for TiKvTx {
Ok(())
}
fn range_scan<'a>(
fn range_scan_tuple<'a>(
&'a self,
lower: &[u8],
upper: &[u8],
@ -139,7 +139,7 @@ impl<'s> StoreTx<'s> for TiKvTx {
Box::new(BatchScanner::new(self.tx.clone(), lower, upper))
}
fn range_scan_raw<'a>(
fn range_scan<'a>(
&'a self,
lower: &[u8],
upper: &[u8],

Loading…
Cancel
Save