]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
msg: update MOSDOp() to use ceph_tid_t instead of long 55424/head
authorLucian Petrut <lpetrut@cloudbasesolutions.com>
Thu, 1 Feb 2024 14:40:03 +0000 (14:40 +0000)
committerLucian Petrut <lpetrut@cloudbasesolutions.com>
Fri, 2 Feb 2024 10:59:14 +0000 (10:59 +0000)
commita3b19e8b53cbc0ee8daa96bd2bc786ec8aaea52f
treed38c8878b6a0dc45390fec938979515f8cb3efcf
parentd372c0dee69ce1a43c67067cce282586b843436d
msg: update MOSDOp() to use ceph_tid_t instead of long

The MOSDOp constructor receives the the transaction ID as a long
instead of ceph_tid_t.

The issue is that "long" uses 32b on Windows instead of 64 bits,
so it flips after about 2 billion requests. At that point, the OSD
replies are dropped because of transaction ID mismatches.

We'll solve the issue by using the correct type for the transaction
id, specifically ceph_tid_t.

Fixes: https://tracker.ceph.com/issues/64291
Signed-off-by: Lucian Petrut <lpetrut@cloudbasesolutions.com>
(cherry picked from commit 0bab1e6b690ec4a12e8dc27229c435d64ca0d0be)
src/messages/MOSDOp.h