From: Yingxin Cheng Date: Mon, 29 Mar 2021 06:04:13 +0000 (+0800) Subject: crimson/onode-staged-tree: allow non-empty DeltaRecorder to be destructed X-Git-Tag: v17.1.0~2434^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F40462%2Fhead;p=ceph.git crimson/onode-staged-tree: allow non-empty DeltaRecorder to be destructed Fixes: http://tracker.ceph.com/issues/50028 Signed-off-by: Yingxin Cheng --- diff --git a/src/crimson/os/seastore/onode_manager/staged-fltree/node_delta_recorder.h b/src/crimson/os/seastore/onode_manager/staged-fltree/node_delta_recorder.h index 63aa16c63520..a37fdb6d5096 100644 --- a/src/crimson/os/seastore/onode_manager/staged-fltree/node_delta_recorder.h +++ b/src/crimson/os/seastore/onode_manager/staged-fltree/node_delta_recorder.h @@ -18,7 +18,10 @@ namespace crimson::os::seastore::onode { class DeltaRecorder { public: virtual ~DeltaRecorder() { - assert(is_empty()); + /* May be non-empty if transaction is abandoned without + * being submitted -- conflicts are a particularly common + * example (denoted generally by returning crimson::ct_error::eagain). + */ } bool is_empty() const {