]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
mds: fix assert(omap_num_objs <= MAX_OBJECTS) of OpenFileTable 32756/head
authorYan, Zheng <zyan@redhat.com>
Thu, 5 Dec 2019 02:16:27 +0000 (10:16 +0800)
committerPatrick Donnelly <pdonnell@redhat.com>
Wed, 5 Feb 2020 01:49:00 +0000 (17:49 -0800)
commit4802061055d676fb8b98cb03a3e441b3537acfc0
tree1c238fb01bfc029c81a208cc3ce69fc2b90a0302
parentc15b0b4124104a3ffdfda8666cdc419fb592a1f8
mds: fix assert(omap_num_objs <= MAX_OBJECTS) of OpenFileTable

Current behavior of the loop that commits dirty items is:

- If the last object is not full, it will be chosen for new item.
- If the last object becomes full, a new object is allocated, which
  becomes the new last object.

Above logical can make object count increase even there is free object.

Fixes: https://tracker.ceph.com/issues/36094
Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
(cherry picked from commit 21b1069eab43fdc2c91915d22f45802d017702fc)
src/mds/OpenFileTable.cc