mirror of
https://github.com/facebook/sapling.git
synced 2024-10-09 00:14:35 +03:00
5a2246acbf
Summary: Previously, `Dirstate::hgGetDirstateTuple()` was reporting a status of `DirstateNonnormalFileStatus::NotTracked` even when the true status was `Normal`. Falsely reporting the status has serious consequences when running `hg log` on an existing, tracked file. Specifically, it causes this `f not in wctx` condition to be `True` here: https://phab.mercurial-scm.org/diffusion/HG/browse/default/mercurial/cmdutil.py;da8bdeb1be28b976909a963c89e974264686e2bb$2316 which in turn causes the slow path to be selected: https://phab.mercurial-scm.org/diffusion/HG/browse/default/mercurial/cmdutil.py;da8bdeb1be28b976909a963c89e974264686e2bb$2320 For large repositories like ours, this can be very, very slow. There are still some TODOs in the new implementation, but this seems much more faithful to the true implementation than what we had before. Reviewed By: quark-zju Differential Revision: D5655741 fbshipit-source-id: 07b953e23e4d74c480ac2d94dfc6a8df9df4fcbb |
||
---|---|---|
.. | ||
cli | ||
docs | ||
fs | ||
hooks | ||
integration | ||
DEFS |