On Sun, 29 Dec 2024 00:49:21 +0100, Bo Berglund <bo.bergl...@gmail.com> wrote:

>Since I did not succeed in getting this to work with svnrload and a
>StackOverflow search suggested I should use svnadmin instead:
>
>I reverted to svnadmin and look what happened:
>
>svnadmin load E:\SVNREPOS\cmpcpy < dump_cmp
><<< Started new transaction, based on original revision 1312
>     * editing path : CmpLaz/trunk/PasLibVlc/source/PasLibVlcClassUnit.pas ...
>done.
>     * editing path : CmpLaz/trunk/PasLibVlc/source/PasLibVlcUnit.pas ... done.
>     * editing path : CmpLaz/trunk/PasLibVlc/source/PasLibVlcUnit.txt ... done.
>     * editing path : CmpLaz/trunk/PasLibVlc/source/compiler.inc ... done.
>     * editing path : CmpLaz/trunk/PasLibVlc/source.vcl/PasLibVlcPlayerUnit.pas
>... done.
>     * editing path : CmpLaz/trunk/PasLibVlc/source.vcl/PasLibVlcPlayerUnit.txt
>... done.
>
>------- Committed revision 1312 >>>
>
>So now the test repo *contains* the new revision (there was only one committed
>in October in the dump file)!
>
>So tomorrow I will process the actual 8 much bigger repos with tons of missing
>revisions.
>
>Thanks for bearing with me!

Now back after the holidays and I have stumbled across a very strange problem.

This concerns a repository named pc where the mirror repo has a last revvision
number 4498 whereas the main repo shows revision 4518.
Missing 20 revs *on the mirror* which has not been subject to a power outage or
been offline!

This is very strange since the main repository is from a server backup dated in
July 2024 

I have also checked the commit emails for this repo and those show another set
of commits done for revs 4519 to 4528 between 2024-08-14-2024-12-01, which is
where the mirror should be now. But isn't....


Command svn info on the *main server* shows this:

Repository Root: https://agiengineering/svn/pc
Repository UUID: 1e489663-c639-2248-90da-e976bc628839
Revision: 4518
Node Kind: directory
Last Changed Author: bosse
Last Changed Rev: 4518
Last Changed Date: 2023-12-05 04:12:11 -0600 (Tue, 05 Dec 2023)

And the same mirror repo that should have been synced to the mirror server many
time during the fall:

Repository Root: https://svn.mydomain.com/svn/pc
Repository UUID: e8e82d8e-9267-4f7b-8f11-ddd3f99e352f
Revision: 4498
Node Kind: directory
Last Changed Author: bosse
Last Changed Rev: 4498
Last Changed Date: 2023-03-28 20:59:05 +0200 (Tue, 28 Mar 2023)

Notice that the mirror is sitting at a revision way earlier than the main server
even though the other 9 repos show the opposite where the mirror holds the
latest revision from a sync operation in beginning of Dec 2024

It seems like the sync was not really done for this repo for a long time even
though the nightly sync operation actually was working for all the other repos
where the mirror contains commits done up to the server crash...
And it is a single operation on the main server that runs these sync operations.

HOW to fix this?
Couild I proceed like this:

1- Make a repo dump on the main server and load that into the mirror.
   That should bring the mirror to rev 4518 (same as main)

2- Check out the involved 3 projects fresh from the main repo

3- Using the emailings as base commit the same files as are listed there
   Thus recreating the 10 revisions that are missing.

4- Perform a manual sync to the mirror repo to bring that to rev 4528

Is there some caveat (apart from, getting the wrong dates into the revisions)?


And *how* could this have happened and for such a long time?


-- 
Bo Berglund
Developer in Sweden

Reply via email to