From 56ca136aa6830bac9d4dec64b76dd0b8b3bec9d7 Mon Sep 17 00:00:00 2001 From: mdecimus Date: Fri, 5 Jul 2024 20:17:09 +0200 Subject: [PATCH] Refresh old FoundationDB read transactions (code cleanup) --- crates/store/src/backend/foundationdb/read.rs | 6 ++---- tests/src/store/ops.rs | 8 ++++---- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/crates/store/src/backend/foundationdb/read.rs b/crates/store/src/backend/foundationdb/read.rs index fcf6e4aed..38f9338cd 100644 --- a/crates/store/src/backend/foundationdb/read.rs +++ b/crates/store/src/backend/foundationdb/read.rs @@ -85,10 +85,9 @@ impl FdbStore { let end = params.end.serialize(WITH_SUBSPACE); if !params.first { - let mut has_more = true; let mut begin_selector = KeySelector::first_greater_or_equal(&begin); - while has_more { + loop { let mut last_key_bytes = None; { @@ -105,7 +104,6 @@ impl FdbStore { ); while let Some(values) = values.try_next().await? { - has_more = values.more(); let mut last_key = &[] as &[u8]; for value in values.iter() { @@ -115,7 +113,7 @@ impl FdbStore { } } - if has_more && trx.is_expired() { + if values.more() && trx.is_expired() { last_key_bytes = last_key.to_vec().into(); break; } diff --git a/tests/src/store/ops.rs b/tests/src/store/ops.rs index 67f9f237c..c3ae4e3c8 100644 --- a/tests/src/store/ops.rs +++ b/tests/src/store/ops.rs @@ -4,14 +4,14 @@ * SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-SEL */ -use std::{collections::HashSet, time::Duration}; +use std::collections::HashSet; use jmap_proto::types::{collection::Collection, property::Property}; use store::{ write::{ BatchBuilder, BitmapClass, DirectoryClass, MaybeDynamicId, TagValue, ValueClass, F_CLEAR, }, - BitmapKey, IterateParams, Store, ValueKey, + BitmapKey, Store, ValueKey, }; // FDB max value @@ -49,7 +49,7 @@ pub async fn test(db: Store) { // Iterate over all keys let mut n = 0; db.iterate( - IterateParams::new( + store::IterateParams::new( ValueKey { account_id: 0, collection: 0, @@ -69,7 +69,7 @@ pub async fn test(db: Store) { n += 1; if n % 10000 == 0 { println!("Iterated over {n} keys"); - std::thread::sleep(Duration::from_millis(1000)); + std::thread::sleep(std::time::Duration::from_millis(1000)); } Ok(true) },