return this->get_split_pivot().get_offset();
}
- void prepare_write() final {
+ void prepare_commit() final {
if (this->is_initial_pending()) {
if (this->is_rewrite()) {
this->set_children_from_prior_instance();
}
}
- void prepare_write() final {
+ void prepare_commit() final {
if constexpr (has_children) {
if (this->is_initial_pending()) {
if (this->is_rewrite()) {
i->prepare_write();
i->set_io_wait();
+ i->prepare_commit();
assert(i->get_version() > 0);
auto final_crc = i->get_crc32c();
bufferlist bl;
i->prepare_write();
+ i->prepare_commit();
bl.append(i->get_bptr());
if (i->get_type() == extent_types_t::ROOT) {
ceph_assert(0 == "ROOT never gets written as a fresh block");
assert(!i->is_inline());
get_by_ext(efforts.fresh_ool_by_ext,
i->get_type()).increment(i->get_length());
+ i->prepare_commit();
if (is_backref_mapped_extent_node(i)) {
alloc_delta.alloc_blk_ranges.emplace_back(
i->get_paddr(),
*/
virtual void prepare_write() {}
+ /**
+ * prepare_commit
+ *
+ * Called prior to committing the transaction in which this extent
+ * is living.
+ */
+ virtual void prepare_commit() {}
+
/**
* on_initial_write
*