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