tests/test-upgrade-repo.t
changeset 38720 d12415b8f833
parent 38719 4ad2a1ff0404
child 39489 f1186c292d03
equal deleted inserted replaced
38719:4ad2a1ff0404 38720:d12415b8f833
   127   performing an upgrade with "--run" will make the following changes:
   127   performing an upgrade with "--run" will make the following changes:
   128   
   128   
   129   requirements
   129   requirements
   130      preserved: dotencode, fncache, generaldelta, revlogv1, store
   130      preserved: dotencode, fncache, generaldelta, revlogv1, store
   131   
   131   
   132   sparserevlog
       
   133      Revlog supports delta chain with more unused data between payload. These gaps will be skipped at read time. This allows for better delta chains, making a better compression and faster exchange with server.
       
   134   
       
   135   additional optimizations are available by specifying "--optimize <name>":
   132   additional optimizations are available by specifying "--optimize <name>":
   136   
   133   
   137   redeltaparent
   134   redeltaparent
   138      deltas within internal storage will be recalculated to choose an optimal base revision where this was not already done; the size of the repository may shrink and various operations may become faster; the first time this optimization is performed could slow down upgrade execution considerably; subsequent invocations should not run noticeably slower
   135      deltas within internal storage will be recalculated to choose an optimal base revision where this was not already done; the size of the repository may shrink and various operations may become faster; the first time this optimization is performed could slow down upgrade execution considerably; subsequent invocations should not run noticeably slower
   139   
   136   
   153   (no feature deficiencies found in existing repository)
   150   (no feature deficiencies found in existing repository)
   154   performing an upgrade with "--run" will make the following changes:
   151   performing an upgrade with "--run" will make the following changes:
   155   
   152   
   156   requirements
   153   requirements
   157      preserved: dotencode, fncache, generaldelta, revlogv1, store
   154      preserved: dotencode, fncache, generaldelta, revlogv1, store
   158   
       
   159   sparserevlog
       
   160      Revlog supports delta chain with more unused data between payload. These gaps will be skipped at read time. This allows for better delta chains, making a better compression and faster exchange with server.
       
   161   
   155   
   162   redeltaparent
   156   redeltaparent
   163      deltas within internal storage will choose a new base revision if needed
   157      deltas within internal storage will choose a new base revision if needed
   164   
   158   
   165   additional optimizations are available by specifying "--optimize <name>":
   159   additional optimizations are available by specifying "--optimize <name>":
   239      repository will be better able to store files beginning with a space or period
   233      repository will be better able to store files beginning with a space or period
   240   
   234   
   241   generaldelta
   235   generaldelta
   242      repository storage will be able to create optimal deltas; new repository data will be smaller and read times should decrease; interacting with other repositories using this storage model should require less network and CPU resources, making "hg push" and "hg pull" faster
   236      repository storage will be able to create optimal deltas; new repository data will be smaller and read times should decrease; interacting with other repositories using this storage model should require less network and CPU resources, making "hg push" and "hg pull" faster
   243   
   237   
   244   sparserevlog
       
   245      Revlog supports delta chain with more unused data between payload. These gaps will be skipped at read time. This allows for better delta chains, making a better compression and faster exchange with server.
       
   246   
       
   247   additional optimizations are available by specifying "--optimize <name>":
   238   additional optimizations are available by specifying "--optimize <name>":
   248   
   239   
   249   redeltaparent
   240   redeltaparent
   250      deltas within internal storage will be recalculated to choose an optimal base revision where this was not already done; the size of the repository may shrink and various operations may become faster; the first time this optimization is performed could slow down upgrade execution considerably; subsequent invocations should not run noticeably slower
   241      deltas within internal storage will be recalculated to choose an optimal base revision where this was not already done; the size of the repository may shrink and various operations may become faster; the first time this optimization is performed could slow down upgrade execution considerably; subsequent invocations should not run noticeably slower
   251   
   242   
   283   fncache
   274   fncache
   284      repository will be more resilient to storing certain paths and performance of certain operations should be improved
   275      repository will be more resilient to storing certain paths and performance of certain operations should be improved
   285   
   276   
   286   generaldelta
   277   generaldelta
   287      repository storage will be able to create optimal deltas; new repository data will be smaller and read times should decrease; interacting with other repositories using this storage model should require less network and CPU resources, making "hg push" and "hg pull" faster
   278      repository storage will be able to create optimal deltas; new repository data will be smaller and read times should decrease; interacting with other repositories using this storage model should require less network and CPU resources, making "hg push" and "hg pull" faster
   288   
       
   289   sparserevlog
       
   290      Revlog supports delta chain with more unused data between payload. These gaps will be skipped at read time. This allows for better delta chains, making a better compression and faster exchange with server.
       
   291   
   279   
   292   additional optimizations are available by specifying "--optimize <name>":
   280   additional optimizations are available by specifying "--optimize <name>":
   293   
   281   
   294   redeltaparent
   282   redeltaparent
   295      deltas within internal storage will be recalculated to choose an optimal base revision where this was not already done; the size of the repository may shrink and various operations may become faster; the first time this optimization is performed could slow down upgrade execution considerably; subsequent invocations should not run noticeably slower
   283      deltas within internal storage will be recalculated to choose an optimal base revision where this was not already done; the size of the repository may shrink and various operations may become faster; the first time this optimization is performed could slow down upgrade execution considerably; subsequent invocations should not run noticeably slower
   312   $ hg -R modern debugupgraderepo --run
   300   $ hg -R modern debugupgraderepo --run
   313   upgrade will perform the following actions:
   301   upgrade will perform the following actions:
   314   
   302   
   315   requirements
   303   requirements
   316      preserved: dotencode, fncache, generaldelta, revlogv1, store
   304      preserved: dotencode, fncache, generaldelta, revlogv1, store
   317   
       
   318   sparserevlog
       
   319      Revlog supports delta chain with more unused data between payload. These gaps will be skipped at read time. This allows for better delta chains, making a better compression and faster exchange with server.
       
   320   
   305   
   321   beginning upgrade...
   306   beginning upgrade...
   322   repository locked and read-only
   307   repository locked and read-only
   323   creating temporary repository to stage migrated data: $TESTTMP/modern/.hg/upgrade.* (glob)
   308   creating temporary repository to stage migrated data: $TESTTMP/modern/.hg/upgrade.* (glob)
   324   (it is safe to interrupt this process any time before data migration completes)
   309   (it is safe to interrupt this process any time before data migration completes)
   352      preserved: dotencode, fncache, revlogv1, store
   337      preserved: dotencode, fncache, revlogv1, store
   353      added: generaldelta
   338      added: generaldelta
   354   
   339   
   355   generaldelta
   340   generaldelta
   356      repository storage will be able to create optimal deltas; new repository data will be smaller and read times should decrease; interacting with other repositories using this storage model should require less network and CPU resources, making "hg push" and "hg pull" faster
   341      repository storage will be able to create optimal deltas; new repository data will be smaller and read times should decrease; interacting with other repositories using this storage model should require less network and CPU resources, making "hg push" and "hg pull" faster
   357   
       
   358   sparserevlog
       
   359      Revlog supports delta chain with more unused data between payload. These gaps will be skipped at read time. This allows for better delta chains, making a better compression and faster exchange with server.
       
   360   
   342   
   361   beginning upgrade...
   343   beginning upgrade...
   362   repository locked and read-only
   344   repository locked and read-only
   363   creating temporary repository to stage migrated data: $TESTTMP/upgradegd/.hg/upgrade.* (glob)
   345   creating temporary repository to stage migrated data: $TESTTMP/upgradegd/.hg/upgrade.* (glob)
   364   (it is safe to interrupt this process any time before data migration completes)
   346   (it is safe to interrupt this process any time before data migration completes)
   452   $ hg debugupgraderepo --run
   434   $ hg debugupgraderepo --run
   453   upgrade will perform the following actions:
   435   upgrade will perform the following actions:
   454   
   436   
   455   requirements
   437   requirements
   456      preserved: dotencode, fncache, generaldelta, revlogv1, store
   438      preserved: dotencode, fncache, generaldelta, revlogv1, store
   457   
       
   458   sparserevlog
       
   459      Revlog supports delta chain with more unused data between payload. These gaps will be skipped at read time. This allows for better delta chains, making a better compression and faster exchange with server.
       
   460   
   439   
   461   beginning upgrade...
   440   beginning upgrade...
   462   repository locked and read-only
   441   repository locked and read-only
   463   creating temporary repository to stage migrated data: $TESTTMP/store-filenames/.hg/upgrade.* (glob)
   442   creating temporary repository to stage migrated data: $TESTTMP/store-filenames/.hg/upgrade.* (glob)
   464   (it is safe to interrupt this process any time before data migration completes)
   443   (it is safe to interrupt this process any time before data migration completes)
   487   upgrade will perform the following actions:
   466   upgrade will perform the following actions:
   488   
   467   
   489   requirements
   468   requirements
   490      preserved: dotencode, fncache, generaldelta, revlogv1, store
   469      preserved: dotencode, fncache, generaldelta, revlogv1, store
   491   
   470   
   492   sparserevlog
       
   493      Revlog supports delta chain with more unused data between payload. These gaps will be skipped at read time. This allows for better delta chains, making a better compression and faster exchange with server.
       
   494   
       
   495   redeltafulladd
   471   redeltafulladd
   496      each revision will be added as new content to the internal storage; this will likely drastically slow down execution time, but some extensions might need it
   472      each revision will be added as new content to the internal storage; this will likely drastically slow down execution time, but some extensions might need it
   497   
   473   
   498   beginning upgrade...
   474   beginning upgrade...
   499   repository locked and read-only
   475   repository locked and read-only
   548   upgrade will perform the following actions:
   524   upgrade will perform the following actions:
   549   
   525   
   550   requirements
   526   requirements
   551      preserved: dotencode, fncache, generaldelta, largefiles, revlogv1, store
   527      preserved: dotencode, fncache, generaldelta, largefiles, revlogv1, store
   552   
   528   
   553   sparserevlog
       
   554      Revlog supports delta chain with more unused data between payload. These gaps will be skipped at read time. This allows for better delta chains, making a better compression and faster exchange with server.
       
   555   
       
   556   beginning upgrade...
   529   beginning upgrade...
   557   repository locked and read-only
   530   repository locked and read-only
   558   creating temporary repository to stage migrated data: $TESTTMP/largefilesrepo/.hg/upgrade.* (glob)
   531   creating temporary repository to stage migrated data: $TESTTMP/largefilesrepo/.hg/upgrade.* (glob)
   559   (it is safe to interrupt this process any time before data migration completes)
   532   (it is safe to interrupt this process any time before data migration completes)
   560   migrating 3 total revisions (1 in filelogs, 1 in manifests, 1 in changelog)
   533   migrating 3 total revisions (1 in filelogs, 1 in manifests, 1 in changelog)
   602   $ hg debugupgraderepo --run
   575   $ hg debugupgraderepo --run
   603   upgrade will perform the following actions:
   576   upgrade will perform the following actions:
   604   
   577   
   605   requirements
   578   requirements
   606      preserved: dotencode, fncache, generaldelta, largefiles, lfs, revlogv1, store
   579      preserved: dotencode, fncache, generaldelta, largefiles, lfs, revlogv1, store
   607   
       
   608   sparserevlog
       
   609      Revlog supports delta chain with more unused data between payload. These gaps will be skipped at read time. This allows for better delta chains, making a better compression and faster exchange with server.
       
   610   
   580   
   611   beginning upgrade...
   581   beginning upgrade...
   612   repository locked and read-only
   582   repository locked and read-only
   613   creating temporary repository to stage migrated data: $TESTTMP/largefilesrepo/.hg/upgrade.* (glob)
   583   creating temporary repository to stage migrated data: $TESTTMP/largefilesrepo/.hg/upgrade.* (glob)
   614   (it is safe to interrupt this process any time before data migration completes)
   584   (it is safe to interrupt this process any time before data migration completes)
   701   upgrade will perform the following actions:
   671   upgrade will perform the following actions:
   702   
   672   
   703   requirements
   673   requirements
   704      preserved: dotencode, fncache, generaldelta, revlogv1, store
   674      preserved: dotencode, fncache, generaldelta, revlogv1, store
   705   
   675   
   706   sparserevlog
       
   707      Revlog supports delta chain with more unused data between payload. These gaps will be skipped at read time. This allows for better delta chains, making a better compression and faster exchange with server.
       
   708   
       
   709   redeltaall
   676   redeltaall
   710      deltas within internal storage will be fully recomputed; this will likely drastically slow down execution time
   677      deltas within internal storage will be fully recomputed; this will likely drastically slow down execution time
   711   
   678   
   712   beginning upgrade...
   679   beginning upgrade...
   713   repository locked and read-only
   680   repository locked and read-only
   742 
   709 
   743   $ cat << EOF >> $HGRCPATH
   710   $ cat << EOF >> $HGRCPATH
   744   > [format]
   711   > [format]
   745   > maxchainlen = 9001
   712   > maxchainlen = 9001
   746   > EOF
   713   > EOF
       
   714 
       
   715 Check upgrading a sparse-revlog repository
       
   716 ---------------------------------------
       
   717 
       
   718   $ hg init sparserevlogrepo
       
   719   $ cd sparserevlogrepo
       
   720   $ touch foo
       
   721   $ hg add foo
       
   722   $ hg -q commit -m "foo"
       
   723   $ cat .hg/requires
       
   724   dotencode
       
   725   fncache
       
   726   generaldelta
       
   727   revlogv1
       
   728   store
       
   729 
       
   730 Check that we can add the sparse-revlog format requirement
       
   731   $ hg --config format.sparse-revlog=yes debugupgraderepo --run >/dev/null
       
   732   copy of old repository backed up at $TESTTMP/sparserevlogrepo/.hg/upgradebackup.* (glob)
       
   733   the old repository will not be deleted; remove it to free up disk space once the upgraded repository is verified
       
   734   $ cat .hg/requires
       
   735   dotencode
       
   736   fncache
       
   737   generaldelta
       
   738   revlogv1
       
   739   sparserevlog
       
   740   store
       
   741 
       
   742 Check that we can remove the sparse-revlog format requirement
       
   743   $ hg --config format.sparse-revlog=no debugupgraderepo --run >/dev/null
       
   744   copy of old repository backed up at $TESTTMP/sparserevlogrepo/.hg/upgradebackup.* (glob)
       
   745   the old repository will not be deleted; remove it to free up disk space once the upgraded repository is verified
       
   746   $ cat .hg/requires
       
   747   dotencode
       
   748   fncache
       
   749   generaldelta
       
   750   revlogv1
       
   751   store
       
   752   $ cd ..