mirror of
https://github.com/facebook/sapling.git
synced 2024-10-10 00:45:18 +03:00
84de49b69b
Summary: This ports much of the Python logic in `eden/cli/fsck.py` to C++, so that the edenfs daemon can invoke it directly during mount initialization when necessary. This initial diff just contains the code to scan for errors, without any repair logic. This also includes some improvements to the logic for efficiency. For instance, we compute less state during the initial scan phase. This makes the scan phase faster, at the expense of making some of the repair steps slightly more expensive if errors are found. This newer C++ scan logic is significantly faster than the old Python version: scanning 260,000 inode files took around 1m20 second for the Python code, and runs in under 3 seconds with the new C++ code. (On an SSD with the files in question already warm in the kernel cache.) Reviewed By: strager Differential Revision: D16577699 fbshipit-source-id: 2f8713a219ad882848cee0c57dca34f2c7808340 |
||
---|---|---|
.. | ||
test | ||
CMakeLists.txt | ||
eden_fsck.cpp | ||
FsOverlay.cpp | ||
FsOverlay.h | ||
overlay.thrift | ||
OverlayChecker.cpp | ||
OverlayChecker.h |