[Bug 3603] New: Unexplained repository corruption
bugzilla-daemon at bz.selenic.com
bugzilla-daemon at bz.selenic.com
Fri Aug 31 08:13:02 CDT 2012
http://bz.selenic.com/show_bug.cgi?id=3603
Priority: normal
Bug ID: 3603
CC: mercurial-devel at selenic.com
Assignee: bugzilla at selenic.com
Summary: Unexplained repository corruption
Severity: bug
Classification: Unclassified
OS: Mac OS
Reporter: csutton at inf.ed.ac.uk
Hardware: Macintosh
Status: UNCONFIRMED
Version: unspecified
Component: Mercurial
Product: Mercurial
I have a roughly ~800MB repo that I have used for about 3 years. I am the only
user, but I keep one clone on my Mac laptop and one clone on a remote Linux
machine. I pretty much do all my work on the Mac clone and push to the remote
clone. On Mac I am currently using hg version 2.3 and on Linux 2.1. (Didn't
realize the version mismatch until I prepared this bug report; maybe that's not
so good.)
I committed some changes that were intended to move some directories around the
repo. Then when I pushed I got:
pushing to ssh://csutton@staff.login.inf.ed.ac.uk/hg
csutton at staff.login.inf.ed.ac.uk's password:
searching for changes
3 changesets found
abort: empty or missing revlog for reviews/.DS_Store
remote: ** unknown exception encountered, please report by visiting
remote: ** http://mercurial.selenic.com/wiki/BugTracker
remote: ** Python 2.6.6 (r266:84292, Jun 18 2012, 09:57:52) [GCC 4.4.6 20110731
(Red Hat 4.4.6-3)]
remote: ** Mercurial Distributed SCM (version 2.1)
remote: ** Extensions loaded: mq
remote: Traceback (most recent call last):
remote: File "/usr/bin/hg", line 38, in <module>
remote: mercurial.dispatch.run()
remote: File "/usr/lib64/python2.6/site-packages/mercurial/dispatch.py", line
27, in run
remote: sys.exit((dispatch(request(sys.argv[1:])) or 0) & 255)
remote: File "/usr/lib64/python2.6/site-packages/mercurial/dispatch.py", line
64, in dispatch
remote: return _runcatch(req)
remote: File "/usr/lib64/python2.6/site-packages/mercurial/dispatch.py", line
87, in _runcatch
remote: return _dispatch(req)
remote: File "/usr/lib64/python2.6/site-packages/mercurial/dispatch.py", line
683, in _dispatch
remote: cmdpats, cmdoptions)
remote: File "/usr/lib64/python2.6/site-packages/mercurial/dispatch.py", line
465, in runcommand
remote: ret = _runcommand(ui, options, cmd, d)
remote: File "/usr/lib64/python2.6/site-packages/mercurial/dispatch.py", line
737, in _runcommand
remote: return checkargs()
remote: File "/usr/lib64/python2.6/site-packages/mercurial/dispatch.py", line
691, in checkargs
remote: return cmdfunc()
remote: File "/usr/lib64/python2.6/site-packages/mercurial/dispatch.py", line
680, in <lambda>
remote: d = lambda: util.checksignature(func)(ui, *args, **cmdoptions)
remote: File "/usr/lib64/python2.6/site-packages/mercurial/util.py", line
456, in check
remote: return func(*args, **kwargs)
remote: File "/usr/lib64/python2.6/site-packages/mercurial/extensions.py",
line 139, in wrap
remote: util.checksignature(origfn), *args, **kwargs)
remote: File "/usr/lib64/python2.6/site-packages/mercurial/util.py", line
456, in check
remote: return func(*args, **kwargs)
remote: File "/usr/lib64/python2.6/site-packages/hgext/mq.py", line 3325, in
mqcommand
remote: return orig(ui, repo, *args, **kwargs)
remote: File "/usr/lib64/python2.6/site-packages/mercurial/util.py", line
456, in check
remote: return func(*args, **kwargs)
remote: File "/usr/lib64/python2.6/site-packages/mercurial/commands.py", line
5048, in serve
remote: s.serve_forever()
remote: File "/usr/lib64/python2.6/site-packages/mercurial/sshserver.py",
line 93, in serve_forever
remote: while self.serve_one():
remote: File "/usr/lib64/python2.6/site-packages/mercurial/sshserver.py",
line 111, in serve_one
remote: rsp = wireproto.dispatch(self.repo, self, cmd)
remote: File "/usr/lib64/python2.6/site-packages/mercurial/wireproto.py",
line 348, in dispatch
remote: return func(repo, proto, *args)
remote: File "/usr/lib64/python2.6/site-packages/mercurial/wireproto.py",
line 572, in unbundle
remote: proto.getfile(fp)
remote: File "/usr/lib64/python2.6/site-packages/mercurial/sshserver.py",
line 56, in getfile
remote: count = int(self.fin.readline())
remote: ValueError: invalid literal for int() with base 10: ''
*******
I didn't intend to commit a .DS_Store file but it is possible that I did so
inadvertently. Some Googling led me to the verify command. On the Mac repo this
returns
[csutton hg] :; hg verify
repository uses revlog format 1
checking changesets
checking manifests
crosschecking files in changesets and manifests
checking files
html/pro/lfd.html at 292: 611d23e95315 in manifests not found
html/pro/lfd.html at 293: 4a8d6040cc37 in manifests not found
html/pro/lfd.html at 294: 980846e8949a in manifests not found
html/pro/lfd.html at 295: 36059bd27667 in manifests not found
html/pro/lfd.html at 296: 0992c0f1bfc8 in manifests not found
html/pro/lfd.html at 297: 4807795a2029 in manifests not found
html/pro/lfd.html at 298: 26e4e8ad89be in manifests not found
data/reviews/.DS_Store.i at 56: missing revlog!
56: empty or missing reviews/.DS_Store
reviews/.DS_Store at 56: 0c388e950444 in manifests not found
reviews/.DS_Store at 222: f76694eda0ed in manifests not found
reviews/.DS_Store at 264: 693df18c0716 in manifests not found
data/reviews/2010/.DS_Store.i at 56: missing revlog!
56: empty or missing reviews/2010/.DS_Store
reviews/2010/.DS_Store at 56: 5f5bff6bbfb5 in manifests not found
reviews/2010/.DS_Store at 165: 72c7458b0b03 in manifests not found
data/teaching/iaml/2010/R/.Rhistory.i at 198: missing revlog!
198: empty or missing teaching/iaml/2010/R/.Rhistory
teaching/iaml/2010/R/.Rhistory at 198: 092ad322e64d in manifests not found
1367 files, 317 changesets, 1849 total revisions
19 integrity errors encountered!
(first damaged changeset appears to be 56)
On the Linux repo I get
[rockefeller hg] :; hg verify
checking changesets
checking manifests
crosschecking files in changesets and manifests
checking files
html/pro/lfd.html at 292: 611d23e95315 in manifests not found
html/pro/lfd.html at 293: 4a8d6040cc37 in manifests not found
html/pro/lfd.html at 294: 980846e8949a in manifests not found
html/pro/lfd.html at 295: 36059bd27667 in manifests not found
html/pro/lfd.html at 296: 0992c0f1bfc8 in manifests not found
html/pro/lfd.html at 297: 4807795a2029 in manifests not found
html/pro/lfd.html at 298: 26e4e8ad89be in manifests not found
1298 files, 314 changesets, 1747 total revisions
7 integrity errors encountered!
(first damaged changeset appears to be 292)
*****
I am sending a bug report because the software asked me to do so. My questions
are: Did I do something wrong? Am I totally screwed? Is there any way to
recover? Thanks for any help that you're able to provide...
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the Mercurial-devel
mailing list