From fbf12e9abbe6f1ab0b7b53bd1a18f29669c9cc88 Mon Sep 17 00:00:00 2001 From: adiholden Date: Thu, 26 Sep 2024 17:51:57 +0300 Subject: [PATCH] chore: cleanup not used opcodes in replication (#3804) feat server: cleanup not used opcodes in replication Signed-off-by: adi_holden --- src/server/journal/serializer.cc | 4 ---- src/server/journal/tx_executor.cc | 3 --- src/server/journal/types.h | 2 -- src/server/rdb_load.cc | 7 ------- src/server/replica.cc | 2 -- 5 files changed, 18 deletions(-) diff --git a/src/server/journal/serializer.cc b/src/server/journal/serializer.cc index d62c5ddce..e6aaed75f 100644 --- a/src/server/journal/serializer.cc +++ b/src/server/journal/serializer.cc @@ -205,10 +205,6 @@ io::Result JournalReader::ReadEntry() { VLOG(1) << "Read entry " << entry.ToString(); - if (opcode == journal::Op::EXEC) { - return entry; - } - auto ec = ReadCommand(&entry.cmd); if (ec) return make_unexpected(ec); diff --git a/src/server/journal/tx_executor.cc b/src/server/journal/tx_executor.cc index bbaa36983..734a59637 100644 --- a/src/server/journal/tx_executor.cc +++ b/src/server/journal/tx_executor.cc @@ -59,10 +59,7 @@ void TransactionData::AddEntry(journal::ParsedEntry&& entry) { return; case journal::Op::EXPIRED: case journal::Op::COMMAND: - case journal::Op::MULTI_COMMAND: command = std::move(entry.cmd); - [[fallthrough]]; - case journal::Op::EXEC: shard_cnt = entry.shard_cnt; dbid = entry.dbid; txid = entry.txid; diff --git a/src/server/journal/types.h b/src/server/journal/types.h index 63c35b9be..4eb3e6b8c 100644 --- a/src/server/journal/types.h +++ b/src/server/journal/types.h @@ -19,8 +19,6 @@ enum class Op : uint8_t { SELECT = 6, EXPIRED = 9, COMMAND = 10, - MULTI_COMMAND = 11, - EXEC = 12, PING = 13, FIN = 14, LSN = 15 diff --git a/src/server/rdb_load.cc b/src/server/rdb_load.cc index 070a28bc9..e41a95ce9 100644 --- a/src/server/rdb_load.cc +++ b/src/server/rdb_load.cc @@ -2358,13 +2358,6 @@ error_code RdbLoaderBase::HandleJournalBlob(Service* service) { SET_OR_RETURN(journal_reader_.ReadEntry(), entry); done++; - // EXEC entries are just for preserving atomicity of transactions. We don't create - // transactions and we don't care about atomicity when we're loading an RDB, so skip them. - // Currently rdb_save also filters those records out, but we filter them additionally here - // for better forward compatibility if we decide to change that. - if (entry.opcode == journal::Op::EXEC) - continue; - if (entry.cmd.cmd_args.empty()) return RdbError(errc::rdb_file_corrupted); diff --git a/src/server/replica.cc b/src/server/replica.cc index 0d0cfd5fc..106b9fcbf 100644 --- a/src/server/replica.cc +++ b/src/server/replica.cc @@ -862,8 +862,6 @@ void DflyShardReplica::StableSyncDflyReadFb(Context* cntx) { } else if (tx_data->opcode == journal::Op::PING) { force_ping_ = true; journal_rec_executed_.fetch_add(1, std::memory_order_relaxed); - } else if (tx_data->opcode == journal::Op::EXEC) { - journal_rec_executed_.fetch_add(1, std::memory_order_relaxed); } else { ExecuteTx(std::move(*tx_data), cntx); journal_rec_executed_.fetch_add(1, std::memory_order_relaxed);