D7709: verify: update comment to say that lfs doesn't need fulltext to check renames

mharbison72 (Matt Harbison) phabricator at mercurial-scm.org
Mon Dec 23 02:47:47 EST 2019


mharbison72 created this revision.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.

REVISION SUMMARY
  The reason is that `filelog.renamed()` indirectly calls `filelog.revision()`,
  which is what accesses the full text.  However, LFS wraps `filelog.renamed()`
  and completely handles the case where an LFS blob is in play by using rawdata.
  
  I've got a test to demonstrate that this is the case, and prevent regressions.
  But the `skipread` flag is set on all lfs revisions when using `--no-lfs`,
  regardless of whether or not the blobs are local.  Just above this, that flag is
  consulted, causing the rename checks to be skipped.  That will need to be
  loosened up first.

REPOSITORY
  rHG Mercurial

REVISION DETAIL
  https://phab.mercurial-scm.org/D7709

AFFECTED FILES
  mercurial/verify.py

CHANGE DETAILS

diff --git a/mercurial/verify.py b/mercurial/verify.py
--- a/mercurial/verify.py
+++ b/mercurial/verify.py
@@ -565,8 +565,9 @@
 
                 # check renames
                 try:
-                    # This requires resolving fulltext (at least on revlogs). We
-                    # may want ``verifyintegrity()`` to pass a set of nodes with
+                    # This requires resolving fulltext (at least on revlogs,
+                    # though not with LFS revisions). We may want
+                    # ``verifyintegrity()`` to pass a set of nodes with
                     # rename metadata as an optimization.
                     rp = fl.renamed(n)
                     if rp:



To: mharbison72, #hg-reviewers
Cc: mercurial-devel


More information about the Mercurial-devel mailing list