From: chunmei-liu Date: Wed, 1 Jun 2022 06:10:10 +0000 (-0700) Subject: crimson/osd: don't do rollback when object not exists X-Git-Tag: v18.0.0~759^2 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=5d1ac1f2c859a4c1b6383f964c32a8a6585c893a;p=ceph.git crimson/osd: don't do rollback when object not exists otherwise the follwoing operation's obc change will be discarded. Signed-off-by: chunmei-liu --- diff --git a/src/crimson/osd/pg.cc b/src/crimson/osd/pg.cc index 4e888b7a55d44..f84fc2556f451 100644 --- a/src/crimson/osd/pg.cc +++ b/src/crimson/osd/pg.cc @@ -705,6 +705,7 @@ PG::do_osd_ops_execute( (const std::error_code& e) mutable { return PG::do_osd_ops_iertr::make_ready_future>( seastar::now(), + e.value() == ENOENT ? (*failure_func_ptr)(e) : rollbacker.rollback_obc_if_modified(e).then_interruptible( [e, failure_func_ptr] { return (*failure_func_ptr)(e);