D4227: repository: remove storedeltachains from ifilestorage

indygreg (Gregory Szorc) phabricator at mercurial-scm.org
Wed Aug 22 12:37:24 EDT 2018


This revision was automatically updated to reflect the committed changes.
Closed by commit rHG0a5b20c107a6: repository: remove storedeltachains from ifilestorage (authored by indygreg, committed by ).

REPOSITORY
  rHG Mercurial

CHANGES SINCE LAST UPDATE
  https://phab.mercurial-scm.org/D4227?vs=10221&id=10512

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

AFFECTED FILES
  mercurial/changelog.py
  mercurial/filelog.py
  mercurial/repository.py
  mercurial/revlog.py
  tests/simplestorerepo.py
  tests/test-revlog-raw.py

CHANGE DETAILS

diff --git a/tests/test-revlog-raw.py b/tests/test-revlog-raw.py
--- a/tests/test-revlog-raw.py
+++ b/tests/test-revlog-raw.py
@@ -20,7 +20,7 @@
 
 # The test wants to control whether to use delta explicitly, based on
 # "storedeltachains".
-revlog.revlog._isgooddeltainfo = lambda self, d, textlen: self.storedeltachains
+revlog.revlog._isgooddeltainfo = lambda self, d, textlen: self._storedeltachains
 
 def abort(msg):
     print('abort: %s' % msg)
@@ -78,15 +78,15 @@
     else:
         flags = revlog.REVIDX_DEFAULT_FLAGS
     # Change storedeltachains temporarily, to override revlog's delta decision
-    rlog.storedeltachains = isdelta
+    rlog._storedeltachains = isdelta
     try:
         rlog.addrevision(text, tr, nextrev, p1, p2, flags=flags)
         return nextrev
     except Exception as ex:
         abort('rev %d: failed to append: %s' % (nextrev, ex))
     finally:
         # Restore storedeltachains. It is always True, see revlog.__init__
-        rlog.storedeltachains = True
+        rlog._storedeltachains = True
 
 def addgroupcopy(rlog, tr, destname=b'_destrevlog.i', optimaldelta=True):
     '''Copy revlog to destname using revlog.addgroup. Return the copied revlog.
diff --git a/tests/simplestorerepo.py b/tests/simplestorerepo.py
--- a/tests/simplestorerepo.py
+++ b/tests/simplestorerepo.py
@@ -105,7 +105,6 @@
 
         # This is used by changegroup code :/
         self._generaldelta = True
-        self.storedeltachains = False
 
         self.version = 1
 
diff --git a/mercurial/revlog.py b/mercurial/revlog.py
--- a/mercurial/revlog.py
+++ b/mercurial/revlog.py
@@ -627,7 +627,7 @@
         p1r, p2r = revlog.rev(p1), revlog.rev(p2)
 
         # should we try to build a delta?
-        if prev != nullrev and revlog.storedeltachains:
+        if prev != nullrev and revlog._storedeltachains:
             tested = set()
             # This condition is true most of the time when processing
             # changegroup data into a generaldelta repo. The only time it
@@ -1075,7 +1075,7 @@
             raise RevlogError(_('unknown version (%d) in revlog %s') %
                               (fmt, self.indexfile))
 
-        self.storedeltachains = True
+        self._storedeltachains = True
 
         self._io = revlogio()
         if self.version == REVLOGV0:
@@ -2995,7 +2995,7 @@
                 # cached, meaning less CPU for delta generation. There is
                 # likely room to add a flag and/or config option to control this
                 # behavior.
-                if deltaparentrev == nullrev and self.storedeltachains:
+                if deltaparentrev == nullrev and self._storedeltachains:
                     baserev = prevrev
 
                 # Revlog is configured to use full snapshot for a reason.
diff --git a/mercurial/repository.py b/mercurial/repository.py
--- a/mercurial/repository.py
+++ b/mercurial/repository.py
@@ -723,14 +723,6 @@
         TODO this feels revlog centric and could likely be removed.
         """)
 
-    storedeltachains = interfaceutil.Attribute(
-        """Whether the store stores deltas.
-
-        TODO deltachains are revlog centric. This can probably removed
-        once there are better abstractions for obtaining/writing
-        data.
-        """)
-
     _generaldelta = interfaceutil.Attribute(
         """Whether deltas can be against any parent revision.
 
diff --git a/mercurial/filelog.py b/mercurial/filelog.py
--- a/mercurial/filelog.py
+++ b/mercurial/filelog.py
@@ -26,7 +26,6 @@
         self.filename = path
         self.index = self._revlog.index
         self.version = self._revlog.version
-        self.storedeltachains = self._revlog.storedeltachains
         self._generaldelta = self._revlog._generaldelta
 
     def __len__(self):
diff --git a/mercurial/changelog.py b/mercurial/changelog.py
--- a/mercurial/changelog.py
+++ b/mercurial/changelog.py
@@ -303,7 +303,7 @@
         # Delta chains for changelogs tend to be very small because entries
         # tend to be small and don't delta well with each. So disable delta
         # chains.
-        self.storedeltachains = False
+        self._storedeltachains = False
 
         self._realopener = opener
         self._delayed = False



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


More information about the Mercurial-devel mailing list