]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
mds: mds_oft_prefetch_dirfrags default to false 45015/head
authorDan van der Ster <daniel.vanderster@cern.ch>
Wed, 19 Jan 2022 14:17:15 +0000 (15:17 +0100)
committerVicente Cheng <freeze.bilsted@gmail.com>
Mon, 14 Feb 2022 09:20:22 +0000 (09:20 +0000)
commit1a9de7417cbed72a69e450260bd0424ba174122d
tree3c1cfbef5d62f0a4d9807e3a435a70876dab1f9c
parent91f471b19a8436443eb4f75ebb3d4414ee623c6e
mds: mds_oft_prefetch_dirfrags default to false

The oft dirfrag prefetch is unpredictable and dangerous because it can
delay rejoin by several minutes and balloon memory usage well beyond the
mds_cache_memory_limit. In the worst cases this can cause an OOM loop if
the memory required for prefetch exceeds the physical memory.

The PR which introduced mds_oft_prefetch_dirfrags also optimized the
client behaviour to eliminate the bad effects of disabling dirfrags
prefetch. And commit d3946e36f89203bd5c7f51c3a73d1a17a4d19863 has been
testing setting this option to false.

We therefore should default the option to false. Operators can still
manually enable it if they know it can speedup their use-cases.

Related-to: https://tracker.ceph.com/issues/45835
Fixes: https://tracker.ceph.com/issues/53952
Signed-off-by: Dan van der Ster <daniel.vanderster@cern.ch>
(cherry picked from commit e19ef199c94406afd220e574e24d52c03d9b67a3)

Conflicts:
src/common/options/mds.yaml.in
  - mds.yaml.in is not introduced to octopus
            make default `false` in options.cc
src/common/options.cc