The dummy rollforward transactions have at_version=0'0; do not call
op_applied on those.
This ensures that the op_applied call
Signed-off-by: Sage Weil <sage@redhat.com>
tls.push_back(std::move(op.t));
tls.push_back(std::move(localt));
get_parent()->queue_transactions(tls, msg);
- get_parent()->op_applied(op.at_version);
+ if (op.at_version != eversion_t()) {
+ // dummy rollforward transaction doesn't get at_version (and doesn't advance it)
+ get_parent()->op_applied(op.at_version);
+ }
}
void ECBackend::handle_sub_read(
void PrimaryLogPG::op_applied(const eversion_t &applied_version)
{
dout(10) << "op_applied version " << applied_version << dendl;
+ assert(applied_version != eversion_t());
assert(applied_version <= info.last_update);
last_update_applied = applied_version;
if (is_primary()) {