changeset 32159:664d6f6c2a48 stable

revlog: backed out changeset e9d325cfe071 We'll move this to the default branch.
author Augie Fackler <augie@google.com>
date Tue, 04 Jul 2017 10:17:14 -0400
parents e9d325cfe071
children aadd79149ac3
files mercurial/localrepo.py mercurial/revlog.py tests/test-generaldelta.t
diffstat 3 files changed, 1 insertions(+), 201 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial/localrepo.py	Fri Jun 23 13:49:34 2017 +0200
+++ b/mercurial/localrepo.py	Tue Jul 04 10:17:14 2017 -0400
@@ -432,9 +432,6 @@
             'aggressivemergedeltas', False)
         self.svfs.options['aggressivemergedeltas'] = aggressivemergedeltas
         self.svfs.options['lazydeltabase'] = not scmutil.gddeltaconfig(self.ui)
-        chainspan = self.ui.configbytes('experimental', 'maxdeltachainspan', -1)
-        if 0 <= chainspan:
-            self.svfs.options['maxdeltachainspan'] = chainspan
 
         for r in self.requirements:
             if r.startswith('exp-compression-'):
--- a/mercurial/revlog.py	Fri Jun 23 13:49:34 2017 +0200
+++ b/mercurial/revlog.py	Tue Jul 04 10:17:14 2017 -0400
@@ -282,7 +282,6 @@
         self._nodecache = {nullid: nullrev}
         self._nodepos = None
         self._compengine = 'zlib'
-        self._maxdeltachainspan = -1
 
         v = REVLOG_DEFAULT_VERSION
         opts = getattr(opener, 'options', None)
@@ -301,8 +300,6 @@
             self._lazydeltabase = bool(opts.get('lazydeltabase', False))
             if 'compengine' in opts:
                 self._compengine = opts['compengine']
-            if 'maxdeltachainspan' in opts:
-                self._maxdeltachainspan = opts['maxdeltachainspan']
 
         if self._chunkcachesize <= 0:
             raise RevlogError(_('revlog chunk cache size %r is not greater '
@@ -1599,13 +1596,7 @@
         # - 'compresseddeltalen' is the sum of the total size of deltas we need
         #   to apply -- bounding it limits the amount of CPU we consume.
         dist, l, data, base, chainbase, chainlen, compresseddeltalen = d
-
-        defaultmax = textlen * 4
-        maxdist = self._maxdeltachainspan
-        if not maxdist:
-            maxdist = dist # ensure the conditional pass
-        maxdist = max(maxdist, defaultmax)
-        if (dist > maxdist or l > textlen or
+        if (dist > textlen * 4 or l > textlen or
             compresseddeltalen > textlen * 2 or
             (self._maxchainlen and chainlen > self._maxchainlen)):
             return False
--- a/tests/test-generaldelta.t	Fri Jun 23 13:49:34 2017 +0200
+++ b/tests/test-generaldelta.t	Tue Jul 04 10:17:14 2017 -0400
@@ -159,191 +159,3 @@
       1c5d4dc9a8b8d6e1750966d343e94db665e7a1e9
 
   $ cd ..
-
-test maxdeltachainspan
-
-  $ hg init source-repo
-  $ cd source-repo
-  $ hg debugbuilddag --new-file '.+5:brancha$.+11:branchb$.+30:branchc<brancha+2<branchb+2'
-  $ cd ..
-  $ hg -R source-repo debugindex -m
-     rev    offset  length  delta linkrev nodeid       p1           p2
-       0         0      46     -1       0 19deeef41503 000000000000 000000000000
-       1        46      57      0       1 fffc37b38c40 19deeef41503 000000000000
-       2       103      57      1       2 5822d75c83d9 fffc37b38c40 000000000000
-       3       160      57      2       3 19cf2273e601 5822d75c83d9 000000000000
-       4       217      57      3       4 d45ead487afe 19cf2273e601 000000000000
-       5       274      57      4       5 96e0c2ce55ed d45ead487afe 000000000000
-       6       331      46     -1       6 0c2ea5222c74 000000000000 000000000000
-       7       377      57      6       7 4ca08a89134d 0c2ea5222c74 000000000000
-       8       434      57      7       8 c973dbfd30ac 4ca08a89134d 000000000000
-       9       491      57      8       9 d81d878ff2cd c973dbfd30ac 000000000000
-      10       548      58      9      10 dbee7f0dd760 d81d878ff2cd 000000000000
-      11       606      58     10      11 474be9f1fd4e dbee7f0dd760 000000000000
-      12       664      58     11      12 594a27502c85 474be9f1fd4e 000000000000
-      13       722      58     12      13 a7d25307d6a9 594a27502c85 000000000000
-      14       780      58     13      14 3eb53082272e a7d25307d6a9 000000000000
-      15       838      58     14      15 d1e94c85caf6 3eb53082272e 000000000000
-      16       896      58     15      16 8933d9629788 d1e94c85caf6 000000000000
-      17       954      58     16      17 a33416e52d91 8933d9629788 000000000000
-      18      1012      47     -1      18 4ccbf31021ed 000000000000 000000000000
-      19      1059      58     18      19 dcad7a25656c 4ccbf31021ed 000000000000
-      20      1117      58     19      20 617c4f8be75f dcad7a25656c 000000000000
-      21      1175      58     20      21 975b9c1d75bb 617c4f8be75f 000000000000
-      22      1233      58     21      22 74f09cd33b70 975b9c1d75bb 000000000000
-      23      1291      58     22      23 54e79bfa7ef1 74f09cd33b70 000000000000
-      24      1349      58     23      24 c556e7ff90af 54e79bfa7ef1 000000000000
-      25      1407      58     24      25 42daedfe9c6b c556e7ff90af 000000000000
-      26      1465      58     25      26 f302566947c7 42daedfe9c6b 000000000000
-      27      1523      58     26      27 2346959851cb f302566947c7 000000000000
-      28      1581      58     27      28 ca8d867106b4 2346959851cb 000000000000
-      29      1639      58     28      29 fd9152decab2 ca8d867106b4 000000000000
-      30      1697      58     29      30 3fe34080a79b fd9152decab2 000000000000
-      31      1755      58     30      31 bce61a95078e 3fe34080a79b 000000000000
-      32      1813      58     31      32 1dd9ba54ba15 bce61a95078e 000000000000
-      33      1871      58     32      33 3cd9b90a9972 1dd9ba54ba15 000000000000
-      34      1929      58     33      34 5db8c9754ef5 3cd9b90a9972 000000000000
-      35      1987      58     34      35 ee4a240cc16c 5db8c9754ef5 000000000000
-      36      2045      58     35      36 9e1d38725343 ee4a240cc16c 000000000000
-      37      2103      58     36      37 3463f73086a8 9e1d38725343 000000000000
-      38      2161      58     37      38 88af72fab449 3463f73086a8 000000000000
-      39      2219      58     38      39 472f5ce73785 88af72fab449 000000000000
-      40      2277      58     39      40 c91b8351e5b8 472f5ce73785 000000000000
-      41      2335      58     40      41 9c8289c5c5c0 c91b8351e5b8 000000000000
-      42      2393      58     41      42 a13fd4a09d76 9c8289c5c5c0 000000000000
-      43      2451      58     42      43 2ec2c81cafe0 a13fd4a09d76 000000000000
-      44      2509      58     43      44 f27fdd174392 2ec2c81cafe0 000000000000
-      45      2567      58     44      45 a539ec59fe41 f27fdd174392 000000000000
-      46      2625      58     45      46 5e98b9ecb738 a539ec59fe41 000000000000
-      47      2683      58     46      47 31e6b47899d0 5e98b9ecb738 000000000000
-      48      2741      58     47      48 2cf25d6636bd 31e6b47899d0 000000000000
-      49      2799     197     -1      49 9fff62ea0624 96e0c2ce55ed 000000000000
-      50      2996      58     49      50 467f8e30a066 9fff62ea0624 000000000000
-      51      3054     356     50      51 346db97283df a33416e52d91 000000000000
-      52      3410      58     51      52 4e003fd4d5cd 346db97283df 000000000000
-  $ hg clone --pull source-repo --config experimental.maxdeltachainspan=2800 relax-chain --config format.generaldelta=yes
-  requesting all changes
-  adding changesets
-  adding manifests
-  adding file changes
-  added 53 changesets with 53 changes to 53 files (+2 heads)
-  updating to branch default
-  14 files updated, 0 files merged, 0 files removed, 0 files unresolved
-  $ hg -R relax-chain debugindex -m
-     rev    offset  length  delta linkrev nodeid       p1           p2
-       0         0      46     -1       0 19deeef41503 000000000000 000000000000
-       1        46      57      0       1 fffc37b38c40 19deeef41503 000000000000
-       2       103      57      1       2 5822d75c83d9 fffc37b38c40 000000000000
-       3       160      57      2       3 19cf2273e601 5822d75c83d9 000000000000
-       4       217      57      3       4 d45ead487afe 19cf2273e601 000000000000
-       5       274      57      4       5 96e0c2ce55ed d45ead487afe 000000000000
-       6       331      46     -1       6 0c2ea5222c74 000000000000 000000000000
-       7       377      57      6       7 4ca08a89134d 0c2ea5222c74 000000000000
-       8       434      57      7       8 c973dbfd30ac 4ca08a89134d 000000000000
-       9       491      57      8       9 d81d878ff2cd c973dbfd30ac 000000000000
-      10       548      58      9      10 dbee7f0dd760 d81d878ff2cd 000000000000
-      11       606      58     10      11 474be9f1fd4e dbee7f0dd760 000000000000
-      12       664      58     11      12 594a27502c85 474be9f1fd4e 000000000000
-      13       722      58     12      13 a7d25307d6a9 594a27502c85 000000000000
-      14       780      58     13      14 3eb53082272e a7d25307d6a9 000000000000
-      15       838      58     14      15 d1e94c85caf6 3eb53082272e 000000000000
-      16       896      58     15      16 8933d9629788 d1e94c85caf6 000000000000
-      17       954      58     16      17 a33416e52d91 8933d9629788 000000000000
-      18      1012      47     -1      18 4ccbf31021ed 000000000000 000000000000
-      19      1059      58     18      19 dcad7a25656c 4ccbf31021ed 000000000000
-      20      1117      58     19      20 617c4f8be75f dcad7a25656c 000000000000
-      21      1175      58     20      21 975b9c1d75bb 617c4f8be75f 000000000000
-      22      1233      58     21      22 74f09cd33b70 975b9c1d75bb 000000000000
-      23      1291      58     22      23 54e79bfa7ef1 74f09cd33b70 000000000000
-      24      1349      58     23      24 c556e7ff90af 54e79bfa7ef1 000000000000
-      25      1407      58     24      25 42daedfe9c6b c556e7ff90af 000000000000
-      26      1465      58     25      26 f302566947c7 42daedfe9c6b 000000000000
-      27      1523      58     26      27 2346959851cb f302566947c7 000000000000
-      28      1581      58     27      28 ca8d867106b4 2346959851cb 000000000000
-      29      1639      58     28      29 fd9152decab2 ca8d867106b4 000000000000
-      30      1697      58     29      30 3fe34080a79b fd9152decab2 000000000000
-      31      1755      58     30      31 bce61a95078e 3fe34080a79b 000000000000
-      32      1813      58     31      32 1dd9ba54ba15 bce61a95078e 000000000000
-      33      1871      58     32      33 3cd9b90a9972 1dd9ba54ba15 000000000000
-      34      1929      58     33      34 5db8c9754ef5 3cd9b90a9972 000000000000
-      35      1987      58     34      35 ee4a240cc16c 5db8c9754ef5 000000000000
-      36      2045      58     35      36 9e1d38725343 ee4a240cc16c 000000000000
-      37      2103      58     36      37 3463f73086a8 9e1d38725343 000000000000
-      38      2161      58     37      38 88af72fab449 3463f73086a8 000000000000
-      39      2219      58     38      39 472f5ce73785 88af72fab449 000000000000
-      40      2277      58     39      40 c91b8351e5b8 472f5ce73785 000000000000
-      41      2335      58     40      41 9c8289c5c5c0 c91b8351e5b8 000000000000
-      42      2393      58     41      42 a13fd4a09d76 9c8289c5c5c0 000000000000
-      43      2451      58     42      43 2ec2c81cafe0 a13fd4a09d76 000000000000
-      44      2509      58     43      44 f27fdd174392 2ec2c81cafe0 000000000000
-      45      2567      58     44      45 a539ec59fe41 f27fdd174392 000000000000
-      46      2625      58     45      46 5e98b9ecb738 a539ec59fe41 000000000000
-      47      2683      58     46      47 31e6b47899d0 5e98b9ecb738 000000000000
-      48      2741      58     47      48 2cf25d6636bd 31e6b47899d0 000000000000
-      49      2799     197     -1      49 9fff62ea0624 96e0c2ce55ed 000000000000
-      50      2996      58     49      50 467f8e30a066 9fff62ea0624 000000000000
-      51      3054      58     17      51 346db97283df a33416e52d91 000000000000
-      52      3112     369     -1      52 4e003fd4d5cd 346db97283df 000000000000
-  $ hg clone --pull source-repo --config experimental.maxdeltachainspan=0 noconst-chain --config format.generaldelta=yes
-  requesting all changes
-  adding changesets
-  adding manifests
-  adding file changes
-  added 53 changesets with 53 changes to 53 files (+2 heads)
-  updating to branch default
-  14 files updated, 0 files merged, 0 files removed, 0 files unresolved
-  $ hg -R noconst-chain debugindex -m
-     rev    offset  length  delta linkrev nodeid       p1           p2
-       0         0      46     -1       0 19deeef41503 000000000000 000000000000
-       1        46      57      0       1 fffc37b38c40 19deeef41503 000000000000
-       2       103      57      1       2 5822d75c83d9 fffc37b38c40 000000000000
-       3       160      57      2       3 19cf2273e601 5822d75c83d9 000000000000
-       4       217      57      3       4 d45ead487afe 19cf2273e601 000000000000
-       5       274      57      4       5 96e0c2ce55ed d45ead487afe 000000000000
-       6       331      46     -1       6 0c2ea5222c74 000000000000 000000000000
-       7       377      57      6       7 4ca08a89134d 0c2ea5222c74 000000000000
-       8       434      57      7       8 c973dbfd30ac 4ca08a89134d 000000000000
-       9       491      57      8       9 d81d878ff2cd c973dbfd30ac 000000000000
-      10       548      58      9      10 dbee7f0dd760 d81d878ff2cd 000000000000
-      11       606      58     10      11 474be9f1fd4e dbee7f0dd760 000000000000
-      12       664      58     11      12 594a27502c85 474be9f1fd4e 000000000000
-      13       722      58     12      13 a7d25307d6a9 594a27502c85 000000000000
-      14       780      58     13      14 3eb53082272e a7d25307d6a9 000000000000
-      15       838      58     14      15 d1e94c85caf6 3eb53082272e 000000000000
-      16       896      58     15      16 8933d9629788 d1e94c85caf6 000000000000
-      17       954      58     16      17 a33416e52d91 8933d9629788 000000000000
-      18      1012      47     -1      18 4ccbf31021ed 000000000000 000000000000
-      19      1059      58     18      19 dcad7a25656c 4ccbf31021ed 000000000000
-      20      1117      58     19      20 617c4f8be75f dcad7a25656c 000000000000
-      21      1175      58     20      21 975b9c1d75bb 617c4f8be75f 000000000000
-      22      1233      58     21      22 74f09cd33b70 975b9c1d75bb 000000000000
-      23      1291      58     22      23 54e79bfa7ef1 74f09cd33b70 000000000000
-      24      1349      58     23      24 c556e7ff90af 54e79bfa7ef1 000000000000
-      25      1407      58     24      25 42daedfe9c6b c556e7ff90af 000000000000
-      26      1465      58     25      26 f302566947c7 42daedfe9c6b 000000000000
-      27      1523      58     26      27 2346959851cb f302566947c7 000000000000
-      28      1581      58     27      28 ca8d867106b4 2346959851cb 000000000000
-      29      1639      58     28      29 fd9152decab2 ca8d867106b4 000000000000
-      30      1697      58     29      30 3fe34080a79b fd9152decab2 000000000000
-      31      1755      58     30      31 bce61a95078e 3fe34080a79b 000000000000
-      32      1813      58     31      32 1dd9ba54ba15 bce61a95078e 000000000000
-      33      1871      58     32      33 3cd9b90a9972 1dd9ba54ba15 000000000000
-      34      1929      58     33      34 5db8c9754ef5 3cd9b90a9972 000000000000
-      35      1987      58     34      35 ee4a240cc16c 5db8c9754ef5 000000000000
-      36      2045      58     35      36 9e1d38725343 ee4a240cc16c 000000000000
-      37      2103      58     36      37 3463f73086a8 9e1d38725343 000000000000
-      38      2161      58     37      38 88af72fab449 3463f73086a8 000000000000
-      39      2219      58     38      39 472f5ce73785 88af72fab449 000000000000
-      40      2277      58     39      40 c91b8351e5b8 472f5ce73785 000000000000
-      41      2335      58     40      41 9c8289c5c5c0 c91b8351e5b8 000000000000
-      42      2393      58     41      42 a13fd4a09d76 9c8289c5c5c0 000000000000
-      43      2451      58     42      43 2ec2c81cafe0 a13fd4a09d76 000000000000
-      44      2509      58     43      44 f27fdd174392 2ec2c81cafe0 000000000000
-      45      2567      58     44      45 a539ec59fe41 f27fdd174392 000000000000
-      46      2625      58     45      46 5e98b9ecb738 a539ec59fe41 000000000000
-      47      2683      58     46      47 31e6b47899d0 5e98b9ecb738 000000000000
-      48      2741      58     47      48 2cf25d6636bd 31e6b47899d0 000000000000
-      49      2799      58      5      49 9fff62ea0624 96e0c2ce55ed 000000000000
-      50      2857      58     49      50 467f8e30a066 9fff62ea0624 000000000000
-      51      2915      58     17      51 346db97283df a33416e52d91 000000000000
-      52      2973      58     51      52 4e003fd4d5cd 346db97283df 000000000000