Betr: Re: Fw: Betr: Re: Many missing revlogs, do we have a problem?
Alban Hertroys
alban.hertroys at apollovredestein.com
Fri Jun 19 09:21:07 UTC 2015
Matt Mackall <mpm at selenic.com> wrote on 18/06/2015 20:40:23:
>
alban.hertroys at apollovredestein.com
T:
Apollo Vredestein B.V. - P.O. Box 27 - 7500 AA Enschede - The Netherlands -
Chamber of Commerce number 34223268 - http://www.apollovredestein.com
The information contained in this e-mail is intended solely for the use of the
individual or entity to whom it is addressed and others authorized to receive
it. You are hereby notified that any disclosure, copying, distribution or
action in relation to the contents of this information is strictly prohibited.
If you are not the intended recipient, please delete this message and any
attachments and advise the sender by return e-mail. The confidentiality of this
message is not warranted. Apollo Vredestein B.V. rules out any and every
liability resulting from this or any other electronic transmission.
On Thu, 2015-06-18 at 10:02 +0200, Alban Hertroys wrote:
> > Alban Hertroys/NL/AVBV wrote on 18/06/2015 09:57:15:
> >
> > > Simon King <simon at simonking.org.uk> wrote on 17/06/2015 18:11:06:
> >
> > > > In your (backup of the) master repository, do you have a file
called
> > > > .hg/store/data/fncache?
> >
> > > Nope.
> >
> > Scratch that, now that I've had coffee I can see that file. However,
it's
> > in the store/ directory instead of data/. The same goes for my local
copy
> > that does verify OK-ish.
>
> If Mercurial says your problem is that thousands of revlogs (aka files)
> have gone missing, it's probably not lying. Just take one of the
> filenames, check its existence on the client and server. They live
> in .hg/store/data. Since Mercurial never deletes these files.. the cause
> is probably elsewhere.
That doesn't appear to be true.
With the first random one I picked, it appears that the entire directory
is missing from the rev-log:
data/CustomerRelatedRep/prodlin.mas.i at 0: missing revlog!
There is a file:
"T:\ibi\apps\.hg\store\data\_customer_related_rep\prodlin.mas.i"
The second random file however, does exist:
data/1_aandp/yfabbb.acx.i at 0: missing revlog!
There is a file:
"T:\ibi\apps\.hg\store\data\1__aandp\yfabbh.acx.i"
In fact, it turns out that ALL the files that hg verify complains about
are in fact there!
How I figured that out:
I applied character replacements for [A-Z_] and for '/.' to a store/data
file-listing that I wrote to a file and sorted the results.
Then I stripped the hg verify output down to the file-names.
A diff between the two files showed that there are no differences!
This was a step-by-step process (done in ViM) I saw the number of
differences reduce during the process of replacing and sorting.
So it looks like Mercurial actually _can_ be wrong about missing revlogs,
at least if it does indeed mean that the file isn't there.
So far it looks like the fncache got truncated and apparently that can
cause these symptoms. I'm just echoing what I've been told here, my
knowledge on this topic is fairly limited - you're the expert.
There is a journal backup file (that's the file that we were having
locking issues with! Related?), but that one's even smaller than the
fncache file itself. Is that normal?
I'm starting to suspect that something happened to the fncache file and
that it got "repaired" using a damaged journal or something...
Is there some way to recreate the fncache in an existing clone?
Regards,
Alban.
More information about the Mercurial
mailing list