From: Xiubo Li Date: Tue, 1 Dec 2020 04:22:54 +0000 (+0800) Subject: mds/CDir: correct the write_size X-Git-Tag: v16.1.0~400^2~1 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=4d09ebce0d9c1d3fd910d422f6d772b4793158c4;p=ceph.git mds/CDir: correct the write_size Signed-off-by: Xiubo Li --- diff --git a/src/mds/CDir.cc b/src/mds/CDir.cc index 3a734e989ffb..c28a3d638d20 100644 --- a/src/mds/CDir.cc +++ b/src/mds/CDir.cc @@ -2249,7 +2249,7 @@ void CDir::_omap_commit_ops(int r, int op_prio, version_t version, bool _new, bu }; for (auto &key : stales) { - write_size += key.length(); + write_size += key.length() + sizeof(__u32); _rm.emplace(key); if (write_size >= max_write_size) @@ -2259,7 +2259,7 @@ void CDir::_omap_commit_ops(int r, int op_prio, version_t version, bool _new, bu for (auto &k : to_remove) { string key; k.encode(key); - write_size += key.length(); + write_size += key.length() + sizeof(__u32); _rm.emplace(std::move(key)); if (write_size >= max_write_size) @@ -2312,7 +2312,7 @@ void CDir::_omap_commit_ops(int r, int op_prio, version_t version, bool _new, bu } off += item.dft_len; - write_size += key.length() + bl.length(); + write_size += key.length() + bl.length() + 2 * sizeof(__u32); _set[std::move(key)].swap(bl); if (write_size >= max_write_size) commit_one();