From: chunmei-liu Date: Wed, 25 May 2022 23:46:52 +0000 (-0700) Subject: crimson/osd: move self tid generatation to shard_service X-Git-Tag: v18.0.0~634^2~1 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=76cf4c7b2f8f7622c58e2ae1309df7cbd8066bf0;p=ceph.git crimson/osd: move self tid generatation to shard_service Signed-off-by: chunmei-liu --- diff --git a/src/crimson/osd/replicated_backend.cc b/src/crimson/osd/replicated_backend.cc index 0802ec5abc47..894d60675297 100644 --- a/src/crimson/osd/replicated_backend.cc +++ b/src/crimson/osd/replicated_backend.cc @@ -53,7 +53,7 @@ ReplicatedBackend::_submit_transaction(std::set&& pg_shards, throw crimson::common::actingset_changed(peering->is_primary); } - const ceph_tid_t tid = next_txn_id++; + const ceph_tid_t tid = shard_services.get_tid(); auto pending_txn = pending_trans.try_emplace(tid, pg_shards.size(), osd_op_p.at_version).first; bufferlist encoded_txn; diff --git a/src/crimson/osd/replicated_backend.h b/src/crimson/osd/replicated_backend.h index fce98fbd0c62..88fa85ede7eb 100644 --- a/src/crimson/osd/replicated_backend.h +++ b/src/crimson/osd/replicated_backend.h @@ -37,7 +37,6 @@ private: std::vector&& log_entries) final; const pg_t pgid; const pg_shard_t whoami; - ceph_tid_t next_txn_id = 0; class pending_on_t : public seastar::weakly_referencable { public: pending_on_t(size_t pending, const eversion_t& at_version) diff --git a/src/crimson/osd/shard_services.h b/src/crimson/osd/shard_services.h index faacc196f374..6913a52cbb57 100644 --- a/src/crimson/osd/shard_services.h +++ b/src/crimson/osd/shard_services.h @@ -139,6 +139,13 @@ public: return dispatch_context({}, std::move(ctx)); } + // -- tids -- + // for ops i issue + unsigned int last_tid{0}; + ceph_tid_t get_tid() { + return (ceph_tid_t)last_tid++; + } + // PG Temp State private: // TODO: hook into map processing and some kind of heartbeat/peering