feat(set family): rewrite set store commands to journal (#691)

This commit is contained in:
adiholden 2023-01-16 23:27:11 +02:00 committed by GitHub
parent daf5473ce1
commit 1f5811fb78
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 45 additions and 24 deletions

View file

@ -1239,14 +1239,15 @@ void Transaction::LogAutoJournalOnShard(EngineShard* shard) {
entry_payload = make_pair(cmd, ShardArgsInShard(shard->shard_id()));
}
LogJournalOnShard(shard, std::move(entry_payload));
LogJournalOnShard(shard, std::move(entry_payload), unique_shard_cnt_);
}
void Transaction::LogJournalOnShard(EngineShard* shard, journal::Entry::Payload&& payload) const {
void Transaction::LogJournalOnShard(EngineShard* shard, journal::Entry::Payload&& payload,
uint32_t shard_cnt) const {
auto journal = shard->journal();
CHECK(journal);
auto opcode = multi_ ? journal::Op::MULTI_COMMAND : journal::Op::COMMAND;
journal->RecordEntry(txid_, opcode, db_index_, unique_shard_cnt_, std::move(payload));
journal->RecordEntry(txid_, opcode, db_index_, shard_cnt, std::move(payload));
}
void Transaction::BreakOnShutdown() {