• Andrew Kryczka's avatar
    Avoid directory renames in BackupEngine · 747c8532
    Andrew Kryczka 创作于
    Summary:
    We used to name private directories like "1.tmp" while BackupEngine populated them, and then rename without the ".tmp" suffix (i.e., rename "1.tmp" to "1") after all files were copied. On glusterfs, directory renames like this require operations across many hosts, and partial failures have caused operational problems.
    
    Fortunately we don't need to rename private directories. We already have a meta-file that uses the tempfile-rename pattern to commit a backup atomically after all its files have been successfully copied. So we can copy private files directly to their final location, so now there's no directory rename.
    Closes https://github.com/facebook/rocksdb/pull/3749
    
    Differential Revision: D7705610
    
    Pulled By: ajkr
    
    fbshipit-source-id: fd724a28dd2bf993ce323a5f2cb7e7d6980cc346
    747c8532