Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

mimic: mds: optimize the way how max export size is enforced #23952

Merged
merged 8 commits into from Oct 19, 2018

Commits on Sep 6, 2018

  1. mds: cleanup MutationImpl::More initialization

    Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
    (cherry picked from commit efff5c6)
    ukernel committed Sep 6, 2018
    Copy the full SHA
    9104897 View commit details
    Browse the repository at this point in the history
  2. mds: make CInode::get_dirfrags container agnostic

    Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
    (cherry picked from commit 6538dae)
    ukernel committed Sep 6, 2018
    Copy the full SHA
    6669fed View commit details
    Browse the repository at this point in the history
  3. mds: optimize the way how max export size is enforced

    The old way is checking export size after subtree gets frozen. It may
    freeze a large subtree, but only exports small portion of the subtree.
    
    The new way is choosing some subdirs according to the max export size,
    then freeze these subdirs.
    
    http://tracker.ceph.com/issues/25131
    Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
    (cherry picked from commit c163777)
    
     Conflicts:
    	src/mds/Migrator.cc
    	src/mds/Migrator.h
    ukernel committed Sep 6, 2018
    Copy the full SHA
    6a23329 View commit details
    Browse the repository at this point in the history
  4. mds: change default mds_max_export_size to 20M

    1G seems too large. mds may speed long time on processing
    imported/expored subtree.
    
    Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
    (cherry picked from commit 07ef150)
    
     Conflicts:
    	src/common/options.cc
    ukernel committed Sep 6, 2018
    Copy the full SHA
    35a86d9 View commit details
    Browse the repository at this point in the history
  5. mds: limit total size of exporting subtrees

    Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
    (cherry picked from commit dd9ad34)
    
     Conflicts:
    	src/mds/Migrator.cc
    	src/mds/Migrator.h
    ukernel committed Sep 6, 2018
    Copy the full SHA
    ed162b3 View commit details
    Browse the repository at this point in the history
  6. mds: export subtree part by part

    When exporting a large subtree, migrator may only exports some portions
    of the subtree. This patch makes migrator continue to export the rest
    partions when previous operations finish.
    
    Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
    (cherry picked from commit da7fc1a)
    ukernel committed Sep 6, 2018
    Copy the full SHA
    767efe0 View commit details
    Browse the repository at this point in the history
  7. mds: clear scatterlock's flushed when removing dirty

    If mds imports scatterlock's parent inode later, the leftover flushed
    flag may prevent Locker::eval_gather from calling scatter_writebehind
    and result incorrect dirstat/neststat.
    
    Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
    (cherry picked from commit 2788b13)
    ukernel committed Sep 6, 2018
    Copy the full SHA
    8474557 View commit details
    Browse the repository at this point in the history
  8. mds: adjust export size after renaming directory into freezing subtree

    restart exporting the subtree if rename makes export size too large
    
    Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
    (cherry picked from commit a7076fa)
    
     Conflicts:
    	src/mds/MDSRank.h
    ukernel committed Sep 6, 2018
    Copy the full SHA
    710a5f5 View commit details
    Browse the repository at this point in the history