for (auto &&i: extent.transactions) {
if (!i.t->conflicted) {
assert(!i.t->is_weak());
- invalidate(*i.t, extent);
+ mark_transaction_conflicted(*i.t, extent);
}
}
DEBUG("invalidate end");
extent.state = CachedExtent::extent_state_t::INVALID;
}
-void Cache::invalidate(Transaction& t, CachedExtent& conflicting_extent)
+void Cache::mark_transaction_conflicted(
+ Transaction& t, CachedExtent& conflicting_extent)
{
LOG_PREFIX(Cache::invalidate);
assert(!t.conflicted);
ext->wait_io()
).then_interruptible([FNAME, this, ext, &t, &ret] {
if (!ext->is_valid()) {
- invalidate(t, *ext);
+ mark_transaction_conflicted(t, *ext);
return;
}
(void)this; // silence incorrect clang warning about capture
if (!ref->is_valid()) {
DEBUGT("got invalid extent: {}", t, ref);
- invalidate(t, *ref);
+ mark_transaction_conflicted(t, *ref);
return get_extent_iertr::make_ready_future<TCachedExtentRef<T>>();
} else {
DEBUGT(
if (!ret->is_valid()) {
LOG_PREFIX(Cache::get_extent_by_type);
DEBUGT("got invalid extent: {}", t, ret);
- invalidate(t, *ret.get());
+ mark_transaction_conflicted(t, *ret.get());
return get_extent_ertr::make_ready_future<CachedExtentRef>();
} else {
t.add_to_read_set(ret);
void invalidate(CachedExtent &extent);
/// Mark a valid transaction as conflicted
- void invalidate(Transaction& t, CachedExtent& conflicting_extent);
+ void mark_transaction_conflicted(
+ Transaction& t, CachedExtent& conflicting_extent);
/// Introspect transaction when it is being destructed
void on_transaction_destruct(Transaction& t);