return do_write(t, extents);
});
}
- record_t record(record_type_t::JOURNAL, t.get_src());
+ record_t record(record_type_t::OOL, t.get_src());
std::list<LogicalCachedExtentRef> pending_extents;
auto commit_time = seastar::lowres_system_clock::now();
const journal_seq_t& committed_to,
segment_nonce_t current_segment_nonce)
{
+ assert(record_group.size.record_type < record_type_t::MAX);
assert(record_group.size.block_size > 0);
assert(record_group.records.size() > 0);
}
}
+ if (record_group.size.record_type == record_type_t::OOL) {
+ // OOL won't contain metadata
+ assert(record_group.size.get_mdlength() == 0);
+ ceph_assert(data_bl.length() ==
+ record_group.size.get_encoded_length());
+ record_group.clear();
+ return data_bl;
+ }
+ // JOURNAL
bufferlist bl;
record_group_header_t header{
static_cast<extent_len_t>(record_group.records.size()),