From a401fd2ded85812e8afa4407c1babab97d4aedca Mon Sep 17 00:00:00 2001 From: Kefu Chai Date: Sat, 19 Dec 2020 17:36:24 +0800 Subject: [PATCH] crimson/osd: load obj ctx for backfill in parallel no need to load object contexts for backfill sequentially. Signed-off-by: Kefu Chai --- src/crimson/osd/recovery_backend.cc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/crimson/osd/recovery_backend.cc b/src/crimson/osd/recovery_backend.cc index ff9963b2b7539..3b8065e2f0f68 100644 --- a/src/crimson/osd/recovery_backend.cc +++ b/src/crimson/osd/recovery_backend.cc @@ -164,9 +164,9 @@ seastar::future RecoveryBackend::scan_for_backfill( [this, &start, max] (auto& version_map) { return backend->list_objects(start, max).then( [this, &start, &version_map] (auto&& ret) { - auto& [objects, next] = ret; - return seastar::do_for_each( - objects, + auto&& [objects, next] = std::move(ret); + return seastar::parallel_for_each( + std::move(objects), [this, &version_map] (const hobject_t& object) { crimson::osd::ObjectContextRef obc; if (pg.is_primary()) { -- 2.39.5