Re: How to remove bogus commit from server?

Daniel Sahlberg <[email protected]> Wed, 25 Mar 2026 13:22:49 +0100
Newsgroups gmane.comp.version-control.subversion.user
Message-ID <CAMHy98MGDPBE6DM5r7MdLPBznHQQzbkYdi4tgQOUv91qb40syg@mail.gmail.com>
--000000000000387d91064dd8541a
Content-Type: text/plain; charset="UTF-8"

Den ons 25 mars 2026 kl 13:03 skrev Bo Berglund <[email protected]>:

> On Wed, 25 Mar 2026 12:01:57 +0100, Daniel Sahlberg
> <[email protected]> wrote:
>
> >What are the exact error messages you get?
>
> So I connected to the Windows server via VPN and RDP and in a cmd window I
> started the syncing bat file which showed that all of the other
> repositories (11
> of them) completed within seconds except for this problem one.
>
> The log file for that repo contains a few lines concerning the failed sync:
>
> [2026-03-25_06:36:48] Starting sync for hw
> svnsync sync --sync-username syncuser https://svn.xxxxxxxxxx.com/svn/hw
> https://yyyyyyyyy/svn/hw
> Transmitting file data .. (long time to print 585 dots) ..svnsync: E120106:
> ra_serf: The server sent a truncated HTTP response body.
> [2026-03-25_06:40:15] Sync completed for hw
>
> So there seems to maybe be a timeout and the server side cannot receive
> the data
> completely?
>

Looks like a timeout, yes. It is probably not because of the .git folder
itself but rather because of the size of the revision.


>
> Is it possible to create a "dump" file on the server containing the data
> for the
> last missing revisions and which I can transfer to the Ubuntu sync server
> and
> import there without the overhead of the Internet connection?
> It looks like a timeout to me.
>

If I remember correctly the last merged revision is stored in a revision
property on r0 in the target repository. I keep a local mirror of the SVN
Book on my own server and there seems to be a few revprops here:

[[[
daniel@srv:/data/svn/svnbook$ svn proplist file:///data/svn/svnbook -v
--revprop -r0
Unversioned properties on revision 0:
  svn:date
    2002-07-07T05:08:15.628904Z
  svn:log
    I'll bet I can enter a log message for revision 0, using tweak-log.cgi.

  svn:sync-from-url
    https://svn.code.sf.net/p/svnbook/source/trunk
  svn:sync-from-uuid
    b70f5e92-ccc6-4167-9ab2-d027528d294b
  svn:sync-last-merged-rev
    6069
daniel@srv:/data/svn/svnbook$
]]]

I suppose you could just `svnadmin dump` the failing revision and then
`svnadmin load` it to the target repository and carefully `svn propset`
svn:sync-last-merged-rev to an appropriate value. Make sure you read
through and understand everything in the SVN book related to svnsync before
attempting this, test it on a testrepository and make a proper backup
before you try it for real.

Hope it works out for you!

/Daniel

[3]
https://svnbook.red-bean.com/en/1.7/svn-book.html#svn.reposadmin.maint.replication



>
>
> --
> Bo Berglund
> Developer in Sweden
>
>
Of

--000000000000387d91064dd8541a
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr">Den ons 25 mars 2026 kl 13:03 skrev Bo Be=
rglund &lt;<a href=3D"mailto:[email protected]">[email protected]</=
a>&gt;:</div><div class=3D"gmail_quote gmail_quote_container"><blockquote c=
lass=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px soli=
d rgb(204,204,204);padding-left:1ex">On Wed, 25 Mar 2026 12:01:57 +0100, Da=
niel Sahlberg<br>
&lt;<a href=3D"mailto:[email protected]" target=3D"_blank">daniel=
[email protected]</a>&gt; wrote:<br>
<br>
&gt;What are the exact error messages you get?<br>
<br>
So I connected to the Windows server via VPN and RDP and in a cmd window I<=
br>
started the syncing bat file which showed that all of the other repositorie=
s (11<br>
of them) completed within seconds except for this problem one.<br>
<br>
The log file for that repo contains a few lines concerning the failed sync:=
<br>
<br>
[2026-03-25_06:36:48] Starting sync for hw <br>
svnsync sync --sync-username syncuser <a href=3D"https://svn.xxxxxxxxxx.com=
/svn/hw" rel=3D"noreferrer" target=3D"_blank">https://svn.xxxxxxxxxx.com/sv=
n/hw</a><br>
<a href=3D"https://yyyyyyyyy/svn/hw" rel=3D"noreferrer" target=3D"_blank">h=
ttps://yyyyyyyyy/svn/hw</a><br>
Transmitting file data .. (long time to print 585 dots) ..svnsync: E120106:=
<br>
ra_serf: The server sent a truncated HTTP response body.<br>
[2026-03-25_06:40:15] Sync completed for hw<br>
<br>
So there seems to maybe be a timeout and the server side cannot receive the=
 data<br>
completely?<br></blockquote><div><br></div><div>Looks like a timeout, yes. =
It is probably not because of the .git folder itself but rather because of =
the size of the revision.</div><div>=C2=A0</div><blockquote class=3D"gmail_=
quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,=
204);padding-left:1ex">
<br>
Is it possible to create a &quot;dump&quot; file on the server containing t=
he data for the<br>
last missing revisions and which I can transfer to the Ubuntu sync server a=
nd<br>
import there without the overhead of the Internet connection?<br>
It looks like a timeout to me.<br></blockquote><div><br></div><div>If I rem=
ember correctly the last merged revision is stored in a revision property o=
n r0 in the target repository. I keep a local mirror of the SVN Book on my =
own server and there seems to be a few revprops here:</div><div><br></div><=
div>[[[</div><div>daniel@srv:/data/svn/svnbook$ svn proplist file:///data/s=
vn/svnbook -v --revprop -r0<br>Unversioned properties on revision 0:<br>=C2=
=A0 svn:date<br>=C2=A0 =C2=A0 2002-07-07T05:08:15.628904Z<br>=C2=A0 svn:log=
<br>=C2=A0 =C2=A0 I&#39;ll bet I can enter a log message for revision 0, us=
ing tweak-log.cgi.<br><br>=C2=A0 svn:sync-from-url<br>=C2=A0 =C2=A0 <a href=
=3D"https://svn.code.sf.net/p/svnbook/source/trunk">https://svn.code.sf.net=
/p/svnbook/source/trunk</a><br>=C2=A0 svn:sync-from-uuid<br>=C2=A0 =C2=A0 b=
70f5e92-ccc6-4167-9ab2-d027528d294b<br>=C2=A0 svn:sync-last-merged-rev<br>=
=C2=A0 =C2=A0 6069<br>daniel@srv:/data/svn/svnbook$<br></div><div>]]]</div>=
<div><br></div><div>I suppose you could just `svnadmin dump` the failing re=
vision and then `svnadmin load` it to the target repository and carefully `=
svn propset` svn:sync-last-merged-rev to an appropriate value. Make sure yo=
u read through and understand everything in the SVN book related to svnsync=
 before attempting this, test it on a testrepository and make a proper back=
up before you try it for real.</div><div><br></div><div>Hope it works out f=
or you!</div><div><br></div><div>/Daniel</div><div><br></div><div>[3] <a hr=
ef=3D"https://svnbook.red-bean.com/en/1.7/svn-book.html#svn.reposadmin.main=
t.replication">https://svnbook.red-bean.com/en/1.7/svn-book.html#svn.reposa=
dmin.maint.replication</a></div><div><br></div><div>=C2=A0</div><blockquote=
 class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px so=
lid rgb(204,204,204);padding-left:1ex">
<br>
<br>
-- <br>
Bo Berglund<br>
Developer in Sweden<br>
<br></blockquote><div><br></div><div>Of=C2=A0=C2=A0</div></div></div>

--000000000000387d91064dd8541a--