[issue3123] Push fails with no details if the server-side cache is corrupted
Martin Geisler
bugs at mercurial.selenic.com
Tue Nov 22 18:13:23 UTC 2011
New submission from Martin Geisler <mg at lazybytes.net>:
While pushing a large repository to a server, we somehow ended up with
corrupt files in the ~/.cache/largefiles folder on the server.
We're unsure how that happened, but it might have been triggered by a full
disk. We'll try to reproduce it later.
This bug report is about the message given to a client that pushes to such a
repository. It would be nice if we could tell a client that the server is in
trouble, or if there would be something about it in the server log file:
$ echo "[extensions]" >> $HGRCPATH
$ echo "largefiles =" >> $HGRCPATH
Create repositories:
$ hg init test
$ cd test
$ echo foo > foo
$ hg add --large foo
$ hg commit -m foo
Corrupt the largefile in ~/.cache/largefiles:
$ echo foobar > ~/.cache/largefiles/f1d2d2f924e986ac86fdf7b36c94bcdf32beec15
Serve an empty repository and try pushing into it:
$ hg init ../empty
$ hg serve -R ../empty -p $HGPORT -d --pid-file=hg.pid -E errors.log \
> --config 'web.allow_push=*' --config web.push_ssl=False
$ cat hg.pid >> $DAEMON_PIDS
Try pushing:
$ hg push http://localhost:$HGPORT/
pushing to http://localhost:$HGPORT/
searching for changes
abort: remotestore: could not put
$TESTTMP/test/.hg/largefiles/f1d2d2f924e986ac86fdf7b36c94bcdf32beec15 to
remote store http://localhost:$HGPORT/
[255]
Error log:
$ cat errors.log
----------
messages: 18149
nosy: gward, kevingessner, mg, natosha
priority: bug
status: unread
title: Push fails with no details if the server-side cache is corrupted
topic: largefiles
____________________________________________________
Mercurial issue tracker <bugs at mercurial.selenic.com>
<http://mercurial.selenic.com/bts/issue3123>
____________________________________________________
More information about the Mercurial-devel
mailing list