abort: unknown compression type '\xb1'!

Andy Isaacson adi at hexapodia.org
Sat Sep 20 19:12:24 UTC 2008


Interesting repo corruption, google doesn't find anything related.  May
have been due to a power outage or disk-full during pull; ext3 on
various 2.6.2X-mmY kernels.  Corruption occurred with 0.9.5 (from debian
unstable) or earlier, I upgraded to 1.0.1 during triage.  Looks like
00manifest.d has a bunch of trailing NULs, but not on a page boundary?
This repo is exclusively written by hg pull.  I've got a tarball of .hg
if anyone's interested.

% hg pull
pulling from http://www.kernel.org/hg/linux-2.6
searching for changes
adding changesets
adding manifests
transaction abort!
rollback completed
abort: unknown compression type '\xb1'!
% hg version | head -1
Mercurial Distributed SCM (version 1.0.1)
% strace -eopen,socket,connect,close hg pull
...
adding manifests
open("/var/lib/python-support/python2.5/mercurial/manifest.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
open("/var/lib/python-support/python2.5/mercurial/manifestmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
open("/var/lib/python-support/python2.5/mercurial/manifest.py", O_RDONLY|O_LARGEFILE) = 7
open("/var/lib/python-support/python2.5/mercurial/manifest.pyc", O_RDONLY|O_LARGEFILE) = 8
close(8)                                = 0
close(7)                                = 0
open("/tmp/a/foo/.hg/store/00manifest.i", O_RDONLY|O_LARGEFILE) = 7
open("/tmp/a/foo/.hg/store/00manifest.i", O_RDWR|O_CREAT|O_APPEND|O_LARGEFILE, 0666) = 8
open("/tmp/a/foo/.hg/store/00manifest.d", O_WRONLY|O_CREAT|O_APPEND|O_LARGEFILE, 0666) = 9
open("/tmp/a/foo/.hg/store/00manifest.d", O_RDONLY|O_LARGEFILE) = 10
close(9)                                = 0
close(8)                                = 0
transaction abort!
open("/tmp/a/foo/.hg/store/00changelog.i", O_WRONLY|O_CREAT|O_APPEND|O_LARGEFILE, 0666) = 8
close(8)                                = 0
open("/tmp/a/foo/.hg/store/00changelog.d", O_WRONLY|O_CREAT|O_APPEND|O_LARGEFILE, 0666) = 8
close(8)                                = 0
open("/tmp/a/foo/.hg/store/00manifest.i", O_WRONLY|O_CREAT|O_APPEND|O_LARGEFILE, 0666) = 8
close(8)                                = 0
open("/tmp/a/foo/.hg/store/00manifest.d", O_WRONLY|O_CREAT|O_APPEND|O_LARGEFILE, 0666) = 8
close(8)                                = 0
rollback completed
close(6)                                = 0
abort: unknown compression type '\xb1'!
close(10)                               = 0
close(7)                                = 0
close(3)                                = 0
Process 29679 detached
% hg verify
checking changesets
checking manifests
 ?: bad link (107748) at manifest revision 107715
 107748: reading manifest delta: unknown compression type '\xb1'
 ?: bad link (107749) at manifest revision 107716
 107749: reading manifest delta: unknown compression type '\x98'
 ?: bad link (107750) at manifest revision 107717
 107750: reading manifest delta: unknown compression type '\xef'
 ?: bad link (107751) at manifest revision 107718
 107751: reading manifest delta: unknown compression type 'e'
 ?: bad link (107752) at manifest revision 107719
 107752: reading manifest delta: unknown compression type ':'
 ?: bad link (107753) at manifest revision 107720
 107753: reading manifest delta: unknown compression type '\xaa'
 ?: bad link (107754) at manifest revision 107721
 107754: reading manifest delta: unknown compression type '\x15'
 ?: bad link (107755) at manifest revision 107722
 107755: reading manifest delta: unknown compression type '+'
 ?: bad link (107756) at manifest revision 107723
 107756: reading manifest delta: Error -3 while decompressing data: incorrect header check
 ?: bad link (107757) at manifest revision 107724
 107757: reading manifest delta: unknown compression type 'M'
 ?: bad link (107758) at manifest revision 107725
 107758: reading manifest delta: unknown compression type '='
 ?: bad link (107759) at manifest revision 107726
 107759: reading manifest delta: unknown compression type '.'
 ?: bad link (107760) at manifest revision 107727
 107760: reading manifest delta: unknown compression type '\x86'
 ?: bad link (107761) at manifest revision 107728
 107761: reading manifest delta: unknown compression type '\xa0'
 ?: bad link (107762) at manifest revision 107729
 107762: reading manifest delta: unknown compression type '%'
 ?: bad link (107763) at manifest revision 107730
 107763: reading manifest delta: unknown compression type 'K'
 ?: bad link (107764) at manifest revision 107731
 107764: reading manifest delta: unknown compression type '\x9f'
 ?: bad link (107765) at manifest revision 107732
 107765: reading manifest delta: unknown compression type '.'
 ?: bad link (107766) at manifest revision 107733
 107766: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107767) at manifest revision 107734
 107767: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107768) at manifest revision 107735
 107768: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107769) at manifest revision 107736
 107769: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107770) at manifest revision 107737
 107770: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107771) at manifest revision 107738
 107771: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107772) at manifest revision 107739
 107772: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107773) at manifest revision 107740
 107773: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107774) at manifest revision 107741
 107774: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107775) at manifest revision 107742
 107775: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107776) at manifest revision 107743
 107776: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107777) at manifest revision 107744
 107777: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107778) at manifest revision 107745
 107778: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107779) at manifest revision 107746
 107779: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107780) at manifest revision 107747
 ?: bad link (107781) at manifest revision 107748
 107781: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107782) at manifest revision 107749
 ?: bad link (107783) at manifest revision 107750
 107783: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107784) at manifest revision 107751
 107784: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107785) at manifest revision 107752
 107785: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107786) at manifest revision 107753
 107786: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107787) at manifest revision 107754
 107787: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107788) at manifest revision 107755
 107788: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107789) at manifest revision 107756
 107789: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107790) at manifest revision 107757
 107790: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107791) at manifest revision 107758
 107791: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107792) at manifest revision 107759
 107792: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107793) at manifest revision 107760
 107793: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107794) at manifest revision 107761
 107794: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107795) at manifest revision 107762
 107795: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107796) at manifest revision 107763
 107796: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107797) at manifest revision 107764
 107797: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107798) at manifest revision 107765
 107798: reading manifest delta: unpack requires a string argument of length 12
 ?: bad link (107799) at manifest revision 107766
 107799: reading manifest delta: unpack requires a string argument of length 12
crosschecking files in changesets and manifests
checking files
<ctrl-C>
% dd if=/home/adi/linux/linus/.hg/store/00manifest.d bs=1M skip=341 | hd | tail
0+1 records in
0+1 records out
929803 bytes (930 kB) copied, 1.49187 s, 623 kB/s
000b1f60  e8 68 cf d1 6a ae ad c6  0a ae 70 d0 c3 62 da 2b  |.h..j.....p..b.+|
000b1f70  f7 1b b3 62 e1 95 f5 48  5d bb cb 2d 23 e4 37 06  |...b...H]..-#.7.|
000b1f80  85 bd 94 3a ab 09 ad b4  3f 82 25 bd 72 3d 72 be  |...:....?.%.r=r.|
000b1f90  a6 0d c8 da a5 ee fc 60  8a f7 17 a4 68 a6 37 b4  |.......`....h.7.|
000b1fa0  e4 ba 5e f1 28 19 3b 59  21 e3 5e 99 4f 4c f0 a2  |..^.(.;Y!.^.OL..|
000b1fb0  eb d6 3a ad 5e 7b e5 7f  02 cb 04 2e b5 00 00 00  |..:.^{..........|
000b1fc0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
000e3000  00 00 00 00 00 00 00 00  00 00 00                 |...........|
000e300b




More information about the Mercurial-devel mailing list