fix: lua and client tracking (#3163)

* add missing tracking_cb_ invkoe in RunSquashedMultiCb
* add test
This commit is contained in:
Kostas Kyrimis 2024-06-11 16:24:44 +03:00 committed by GitHub
parent 007d4854db
commit 7f9a13bb50
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 26 additions and 3 deletions

View file

@ -665,9 +665,7 @@ void Transaction::RunCallback(EngineShard* shard) {
// Log to journal only once the command finished running
if ((coordinator_state_ & COORD_CONCLUDING) || (multi_ && multi_->concluding)) {
LogAutoJournalOnShard(shard, result);
if (tracking_cb_) {
tracking_cb_(this);
}
MaybeInvokeTrackingCb();
}
}
@ -1252,6 +1250,7 @@ OpStatus Transaction::RunSquashedMultiCb(RunnableType cb) {
auto result = cb(this, shard);
shard->db_slice().OnCbFinish();
LogAutoJournalOnShard(shard, result);
MaybeInvokeTrackingCb();
DCHECK_EQ(result.flags, 0); // if it's sophisticated, we shouldn't squash it
return result;