From: Kefu Chai Date: Thu, 28 Feb 2019 03:18:33 +0000 (+0800) Subject: crimson/osd: advance thru maps sequentially X-Git-Tag: v15.0.0~208^2~4 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=2cbc45d68d56f06350cac42ea6737ba199d794bc;p=ceph.git crimson/osd: advance thru maps sequentially we should not do this in parallel. Signed-off-by: Kefu Chai --- diff --git a/src/crimson/osd/osd.cc b/src/crimson/osd/osd.cc index 1d0dbf89d702..bc1d245dac5a 100644 --- a/src/crimson/osd/osd.cc +++ b/src/crimson/osd/osd.cc @@ -534,8 +534,9 @@ seastar::future<> OSD::committed_osd_maps(version_t first, { logger().info("osd.{}: committed_osd_maps({}, {})", whoami, first, last); // advance through the new maps - return seastar::parallel_for_each(boost::irange(first, last + 1), - [this](epoch_t cur) { + return seastar::do_for_each(boost::make_counting_iterator(first), + boost::make_counting_iterator(last + 1), + [this](epoch_t cur) { return get_map(cur).then([this](cached_map_t&& o) { osdmap = std::move(o); if (up_epoch != 0 &&