octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: hg repo corruption -- anyone have a backup?


From: Daniel J Sebald
Subject: Re: hg repo corruption -- anyone have a backup?
Date: Fri, 31 Aug 2012 14:49:07 -0500
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.24) Gecko/20111108 Fedora/3.1.16-1.fc14 Thunderbird/3.1.16

On 08/31/2012 01:57 PM, Daniel J Sebald wrote:
On 08/31/2012 04:23 AM, Daniel J Sebald wrote:

I just noticed something else. The first complaint while doing a verify
is 13674:

checking changesets
checking manifests
crosschecking files in changesets and manifests
checking files
gui//address@hidden: rev 1 points to unexpected changeset 13674
(expected 13357 13500)

Here is changeset 13674:

http://hg.savannah.gnu.org/hgweb/octave/rev/c0e66d6e3dc8
http://hg.savannah.gnu.org/hgweb/octave/graph/a2c74b5c02de

Here is changeset 13500:

http://hg.savannah.gnu.org/hgweb/octave/rev/40bd465b6c79
http://hg.savannah.gnu.org/hgweb/octave/graph/e4403848424e


gui//address@hidden: 291538499e53 not in manifests
gui//address@hidden: rev 37 points to unexpected changeset 13501
(expected 13330 13333 13347 13353 13356 13359 13360 13363 13365 13366
13367 13375 13377 13381 13382 13389 13390 13395 13401 13402 13407 13408
13412 13416 13440 13443 13445 13446 13453 13454 13459 13460 13468 13469
13483 13485 13495 13500)

and notice that HG is trying to find information on the gui//COPYING
file, i.e., the one with the two slashes //. But when I look at the
verbose log entry, the files are:

changeset: 13674:c0e66d6e3dc8
user: Jacob Dawid <address@hidden>
date: Sun Sep 25 10:52:42 2011 +0200
files: gui/COPYING gui/README gui/octave-gui.pro
gui/src/BrowserWidget.cpp gui/src/BrowserWidget.h
gui/src/CommandLineParser.cpp gui/src/CommandLineParser.h
gui/src/FileEditorMdiSubWindow.cpp gui/src/FileEditorMdiSubWindow.h
gui/src/Fi

i.e., gui/COPYING gui/README with a single slash. Recall above that
changeset 13330 has double slashes, gui//README.

The changeset 13500 is the removal of the old GUI. Hence, that is where
the transition from // to / discrepancy is.

Looking at the changeset:

http://hg.savannah.gnu.org/hgweb/octave/rev/40bd465b6c79

There is stuff like "deleted file mode 100644". And here is the addition
of the gui files, right after:

http://hg.savannah.gnu.org/hgweb/octave/rev/86d6c3b90ad7

Again, I'm not extremely knowledgeable on mercurial (and the web
interface, while nice, doesn't provide for fast perusal of
changes/additions/removals), but I wonder if what happened is that
removing/deleting the gui files and then putting them back in with
changeset 13500 confused any existing manifests (links?) to those files
between the time of the creation of the gui tree/branch.

For those who have a better knowledge of the repository than I do, does
it appear those gui files were removed/deleted properly? If so, then
this doesn't make sense:

gui//address@hidden: rev 1 points to unexpected changeset 13674
(expected 13357 13500)

Who knows, maybe mercurial has a bug where it's overlooking a small
detail about // vs. /.

Oh, and changeset 13357 is where gui//COPYING was added:

http://hg.savannah.gnu.org/hgweb/octave/rev/f9fbf8954d7d

Makes sense, at least in terms of the error message. But why would changeset point to 13674 which is in the middle of nowhere?

Here is the graph right around that time period:

http://hg.savannah.gnu.org/hgweb/octave/graph/a2c74b5c02de

Notice there is a "Merge with dev" followed by a "New gui branch". (And then there is a "Close bitbucket default branch".) If I'm following correctly, the "Close bitbucket default branch" ends because the branch was closed. But why does the "New gui branch" just end? Is there something there that hasn't yet been merged with the whole default tree, because it was merged with the bitbucket default branch and then left unfinished?

Dan


reply via email to

[Prev in Thread] Current Thread [Next in Thread]