tests/test-verify.t
changeset 30556 c059286a0f9c
parent 28214 408446e4b10c
child 32288 a2ab9ebcd85b
equal deleted inserted replaced
30555:6a672c3b7860 30556:c059286a0f9c
    67 
    67 
    68   $ hg init missing-entries
    68   $ hg init missing-entries
    69   $ cd missing-entries
    69   $ cd missing-entries
    70   $ echo 0 > file
    70   $ echo 0 > file
    71   $ hg ci -Aqm0
    71   $ hg ci -Aqm0
    72   $ cp -r .hg/store .hg/store-partial
    72   $ cp -R .hg/store .hg/store-partial
    73   $ echo 1 > file
    73   $ echo 1 > file
    74   $ hg ci -Aqm1
    74   $ hg ci -Aqm1
    75   $ cp -r .hg/store .hg/store-full
    75   $ cp -R .hg/store .hg/store-full
    76 
    76 
    77 Entire changelog missing
    77 Entire changelog missing
    78 
    78 
    79   $ rm .hg/store/00changelog.*
    79   $ rm .hg/store/00changelog.*
    80   $ hg verify -q
    80   $ hg verify -q
    82    manifest@0: d0b6632564d4 not in changesets
    82    manifest@0: d0b6632564d4 not in changesets
    83    manifest@1: 941fc4534185 not in changesets
    83    manifest@1: 941fc4534185 not in changesets
    84   3 integrity errors encountered!
    84   3 integrity errors encountered!
    85   (first damaged changeset appears to be 0)
    85   (first damaged changeset appears to be 0)
    86   [1]
    86   [1]
    87   $ cp -r .hg/store-full/. .hg/store
    87   $ cp -R .hg/store-full/. .hg/store
    88 
    88 
    89 Entire manifest log missing
    89 Entire manifest log missing
    90 
    90 
    91   $ rm .hg/store/00manifest.*
    91   $ rm .hg/store/00manifest.*
    92   $ hg verify -q
    92   $ hg verify -q
    93    0: empty or missing manifest
    93    0: empty or missing manifest
    94   1 integrity errors encountered!
    94   1 integrity errors encountered!
    95   (first damaged changeset appears to be 0)
    95   (first damaged changeset appears to be 0)
    96   [1]
    96   [1]
    97   $ cp -r .hg/store-full/. .hg/store
    97   $ cp -R .hg/store-full/. .hg/store
    98 
    98 
    99 Entire filelog missing
    99 Entire filelog missing
   100 
   100 
   101   $ rm .hg/store/data/file.*
   101   $ rm .hg/store/data/file.*
   102   $ hg verify -q
   102   $ hg verify -q
   107   1 warnings encountered!
   107   1 warnings encountered!
   108   hint: run "hg debugrebuildfncache" to recover from corrupt fncache
   108   hint: run "hg debugrebuildfncache" to recover from corrupt fncache
   109   3 integrity errors encountered!
   109   3 integrity errors encountered!
   110   (first damaged changeset appears to be 0)
   110   (first damaged changeset appears to be 0)
   111   [1]
   111   [1]
   112   $ cp -r .hg/store-full/. .hg/store
   112   $ cp -R .hg/store-full/. .hg/store
   113 
   113 
   114 Entire changelog and manifest log missing
   114 Entire changelog and manifest log missing
   115 
   115 
   116   $ rm .hg/store/00changelog.*
   116   $ rm .hg/store/00changelog.*
   117   $ rm .hg/store/00manifest.*
   117   $ rm .hg/store/00manifest.*
   118   $ hg verify -q
   118   $ hg verify -q
   119   warning: orphan revlog 'data/file.i'
   119   warning: orphan revlog 'data/file.i'
   120   1 warnings encountered!
   120   1 warnings encountered!
   121   $ cp -r .hg/store-full/. .hg/store
   121   $ cp -R .hg/store-full/. .hg/store
   122 
   122 
   123 Entire changelog and filelog missing
   123 Entire changelog and filelog missing
   124 
   124 
   125   $ rm .hg/store/00changelog.*
   125   $ rm .hg/store/00changelog.*
   126   $ rm .hg/store/data/file.*
   126   $ rm .hg/store/data/file.*
   135   1 warnings encountered!
   135   1 warnings encountered!
   136   hint: run "hg debugrebuildfncache" to recover from corrupt fncache
   136   hint: run "hg debugrebuildfncache" to recover from corrupt fncache
   137   6 integrity errors encountered!
   137   6 integrity errors encountered!
   138   (first damaged changeset appears to be 0)
   138   (first damaged changeset appears to be 0)
   139   [1]
   139   [1]
   140   $ cp -r .hg/store-full/. .hg/store
   140   $ cp -R .hg/store-full/. .hg/store
   141 
   141 
   142 Entire manifest log and filelog missing
   142 Entire manifest log and filelog missing
   143 
   143 
   144   $ rm .hg/store/00manifest.*
   144   $ rm .hg/store/00manifest.*
   145   $ rm .hg/store/data/file.*
   145   $ rm .hg/store/data/file.*
   150   1 warnings encountered!
   150   1 warnings encountered!
   151   hint: run "hg debugrebuildfncache" to recover from corrupt fncache
   151   hint: run "hg debugrebuildfncache" to recover from corrupt fncache
   152   2 integrity errors encountered!
   152   2 integrity errors encountered!
   153   (first damaged changeset appears to be 0)
   153   (first damaged changeset appears to be 0)
   154   [1]
   154   [1]
   155   $ cp -r .hg/store-full/. .hg/store
   155   $ cp -R .hg/store-full/. .hg/store
   156 
   156 
   157 Changelog missing entry
   157 Changelog missing entry
   158 
   158 
   159   $ cp -f .hg/store-partial/00changelog.* .hg/store
   159   $ cp -f .hg/store-partial/00changelog.* .hg/store
   160   $ hg verify -q
   160   $ hg verify -q
   163    file@?: rev 1 points to nonexistent changeset 1
   163    file@?: rev 1 points to nonexistent changeset 1
   164    (expected 0)
   164    (expected 0)
   165   1 warnings encountered!
   165   1 warnings encountered!
   166   3 integrity errors encountered!
   166   3 integrity errors encountered!
   167   [1]
   167   [1]
   168   $ cp -r .hg/store-full/. .hg/store
   168   $ cp -R .hg/store-full/. .hg/store
   169 
   169 
   170 Manifest log missing entry
   170 Manifest log missing entry
   171 
   171 
   172   $ cp -f .hg/store-partial/00manifest.* .hg/store
   172   $ cp -f .hg/store-partial/00manifest.* .hg/store
   173   $ hg verify -q
   173   $ hg verify -q
   174    manifest@1: changeset refers to unknown revision 941fc4534185
   174    manifest@1: changeset refers to unknown revision 941fc4534185
   175    file@1: c10f2164107d not in manifests
   175    file@1: c10f2164107d not in manifests
   176   2 integrity errors encountered!
   176   2 integrity errors encountered!
   177   (first damaged changeset appears to be 1)
   177   (first damaged changeset appears to be 1)
   178   [1]
   178   [1]
   179   $ cp -r .hg/store-full/. .hg/store
   179   $ cp -R .hg/store-full/. .hg/store
   180 
   180 
   181 Filelog missing entry
   181 Filelog missing entry
   182 
   182 
   183   $ cp -f .hg/store-partial/data/file.* .hg/store/data
   183   $ cp -f .hg/store-partial/data/file.* .hg/store/data
   184   $ hg verify -q
   184   $ hg verify -q
   185    file@1: manifest refers to unknown revision c10f2164107d
   185    file@1: manifest refers to unknown revision c10f2164107d
   186   1 integrity errors encountered!
   186   1 integrity errors encountered!
   187   (first damaged changeset appears to be 1)
   187   (first damaged changeset appears to be 1)
   188   [1]
   188   [1]
   189   $ cp -r .hg/store-full/. .hg/store
   189   $ cp -R .hg/store-full/. .hg/store
   190 
   190 
   191 Changelog and manifest log missing entry
   191 Changelog and manifest log missing entry
   192 
   192 
   193   $ cp -f .hg/store-partial/00changelog.* .hg/store
   193   $ cp -f .hg/store-partial/00changelog.* .hg/store
   194   $ cp -f .hg/store-partial/00manifest.* .hg/store
   194   $ cp -f .hg/store-partial/00manifest.* .hg/store
   197    (expected 0)
   197    (expected 0)
   198    file@?: c10f2164107d not in manifests
   198    file@?: c10f2164107d not in manifests
   199   1 warnings encountered!
   199   1 warnings encountered!
   200   2 integrity errors encountered!
   200   2 integrity errors encountered!
   201   [1]
   201   [1]
   202   $ cp -r .hg/store-full/. .hg/store
   202   $ cp -R .hg/store-full/. .hg/store
   203 
   203 
   204 Changelog and filelog missing entry
   204 Changelog and filelog missing entry
   205 
   205 
   206   $ cp -f .hg/store-partial/00changelog.* .hg/store
   206   $ cp -f .hg/store-partial/00changelog.* .hg/store
   207   $ cp -f .hg/store-partial/data/file.* .hg/store/data
   207   $ cp -f .hg/store-partial/data/file.* .hg/store/data
   209    manifest@?: rev 1 points to nonexistent changeset 1
   209    manifest@?: rev 1 points to nonexistent changeset 1
   210    manifest@?: 941fc4534185 not in changesets
   210    manifest@?: 941fc4534185 not in changesets
   211    file@?: manifest refers to unknown revision c10f2164107d
   211    file@?: manifest refers to unknown revision c10f2164107d
   212   3 integrity errors encountered!
   212   3 integrity errors encountered!
   213   [1]
   213   [1]
   214   $ cp -r .hg/store-full/. .hg/store
   214   $ cp -R .hg/store-full/. .hg/store
   215 
   215 
   216 Manifest and filelog missing entry
   216 Manifest and filelog missing entry
   217 
   217 
   218   $ cp -f .hg/store-partial/00manifest.* .hg/store
   218   $ cp -f .hg/store-partial/00manifest.* .hg/store
   219   $ cp -f .hg/store-partial/data/file.* .hg/store/data
   219   $ cp -f .hg/store-partial/data/file.* .hg/store/data
   220   $ hg verify -q
   220   $ hg verify -q
   221    manifest@1: changeset refers to unknown revision 941fc4534185
   221    manifest@1: changeset refers to unknown revision 941fc4534185
   222   1 integrity errors encountered!
   222   1 integrity errors encountered!
   223   (first damaged changeset appears to be 1)
   223   (first damaged changeset appears to be 1)
   224   [1]
   224   [1]
   225   $ cp -r .hg/store-full/. .hg/store
   225   $ cp -R .hg/store-full/. .hg/store
   226 
   226 
   227 Corrupt changelog base node to cause failure to read revision
   227 Corrupt changelog base node to cause failure to read revision
   228 
   228 
   229   $ printf abcd | dd conv=notrunc of=.hg/store/00changelog.i bs=1 seek=16 \
   229   $ printf abcd | dd conv=notrunc of=.hg/store/00changelog.i bs=1 seek=16 \
   230   >   2> /dev/null
   230   >   2> /dev/null
   236    (expected 1)
   236    (expected 1)
   237   1 warnings encountered!
   237   1 warnings encountered!
   238   4 integrity errors encountered!
   238   4 integrity errors encountered!
   239   (first damaged changeset appears to be 0)
   239   (first damaged changeset appears to be 0)
   240   [1]
   240   [1]
   241   $ cp -r .hg/store-full/. .hg/store
   241   $ cp -R .hg/store-full/. .hg/store
   242 
   242 
   243 Corrupt manifest log base node to cause failure to read revision
   243 Corrupt manifest log base node to cause failure to read revision
   244 
   244 
   245   $ printf abcd | dd conv=notrunc of=.hg/store/00manifest.i bs=1 seek=16 \
   245   $ printf abcd | dd conv=notrunc of=.hg/store/00manifest.i bs=1 seek=16 \
   246   >   2> /dev/null
   246   >   2> /dev/null
   248    manifest@0: reading delta d0b6632564d4: * (glob)
   248    manifest@0: reading delta d0b6632564d4: * (glob)
   249    file@0: 362fef284ce2 not in manifests
   249    file@0: 362fef284ce2 not in manifests
   250   2 integrity errors encountered!
   250   2 integrity errors encountered!
   251   (first damaged changeset appears to be 0)
   251   (first damaged changeset appears to be 0)
   252   [1]
   252   [1]
   253   $ cp -r .hg/store-full/. .hg/store
   253   $ cp -R .hg/store-full/. .hg/store
   254 
   254 
   255 Corrupt filelog base node to cause failure to read revision
   255 Corrupt filelog base node to cause failure to read revision
   256 
   256 
   257   $ printf abcd | dd conv=notrunc of=.hg/store/data/file.i bs=1 seek=16 \
   257   $ printf abcd | dd conv=notrunc of=.hg/store/data/file.i bs=1 seek=16 \
   258   >   2> /dev/null
   258   >   2> /dev/null
   259   $ hg verify -q
   259   $ hg verify -q
   260    file@0: unpacking 362fef284ce2: * (glob)
   260    file@0: unpacking 362fef284ce2: * (glob)
   261   1 integrity errors encountered!
   261   1 integrity errors encountered!
   262   (first damaged changeset appears to be 0)
   262   (first damaged changeset appears to be 0)
   263   [1]
   263   [1]
   264   $ cp -r .hg/store-full/. .hg/store
   264   $ cp -R .hg/store-full/. .hg/store
   265 
   265 
   266   $ cd ..
   266   $ cd ..
   267 
   267 
   268 test changelog without a manifest
   268 test changelog without a manifest
   269 
   269