It aborted because the server hung up in the middle. In other words, the
problem is on your server. Check your logs and check for timeouts and
resource limits.
--
Mathematics is the supreme nostalgia of our time.
> On Tue, 2010-05-25 at 07:56 +0200, Thomas Porschberg wrote:
> > Hi,
> >
> > I'm new to mercurial.
> > I have Linux and installed
> > Mercurial Distributed SCM (version 1.5.1)
> >
> > When I try to do a
> >
> > hg --verbose --traceback clone <my-project-URL>
> ...
> > abort: premature EOF reading chunk (got 79792 bytes, expected 95136)
>
> It aborted because the server hung up in the middle. In other words,
> the problem is on your server. Check your logs and check for timeouts
> and resource limits.
>
Thank you. I checked the server error-log and found a MemoryError.
>snip
172.29.101.158 - - [26/May/2010 08:47:37] Exception happened during
processing request '/cobra.dev?bases=0000000000000000000000000000000000
000000&cmd=changegroupsubset&heads=50f9c49b4602a548298ed9380257fb2a259da20e+b955b1f8114ff33305cd3ade13ea8c5b8eee6578+dac2f1a64979ef2346b47e
c661384fbd279bf536+2a6b3eee0620d6bca08ce41098dd971289fd403a+5b58bb2f0e5ddcd70cc457ef31cb79f7eae947fe+821c7347ed8ca563bb23aefc050b6e514ea361
6d': Traceback (most recent call last):
File "/home/cobra/lib/python/mercurial/hgweb/server.py", line 67, in
do_POST self.do_write()
File "/home/cobra/lib/python/mercurial/hgweb/server.py", line 60, in
do_write self.do_hgweb()
File "/home/cobra/lib/python/mercurial/hgweb/server.py", line 124, in
do_hgweb for chunk in self.server.application(env,
self._start_response): File
"/home/cobra/lib/python/mercurial/hgweb/protocol.py", line 104, in
changegroupsubset chunk = f.read(4096) File
"/home/cobra/lib/python/mercurial/util.py", line 925, in read for chunk
in self.iter: File "/home/cobra/lib/python/mercurial/localrepo.py",
line 1997, in gengroup for chnk in filerevlog.group(nodeiter, lookup):
File "/home/cobra/lib/python/mercurial/revlog.py", line 1161, in group
d = self.revision(nb)
File "/home/cobra/lib/python/mercurial/revlog.py", line 996, in
revision text = self._chunk(base)
File "/home/cobra/lib/python/mercurial/revlog.py", line 958, in _chunk
return decompress(self._chunkraw(rev, rev))
File "/home/cobra/lib/python/mercurial/revlog.py", line 108, in
decompress return _decompress(bin)
MemoryError
>snip
What should I do?
The error is reproducible for me but other users can execute a
clone-command successful. How is it possible? If it is a server problem
then it should affect *all* clients, right?
Best regards
Thomas
--
_____________________________________________________
Thomas Porschberg
Otto Group · GroupTechnologyPartner - Dresden (GTP)
Softwareentwickler · Lokale Logistik · FI-IS-LL
GroupTechnologyPartner - Dresden GmbH · Freiberger Straße 35 · 01067
Dresden Telefon +49 (0) 351 497 23 158 · Fax +49 (0) 351 497 23 119
porsc...@osp-dd.de · www.ottogroup.com <http://www.ottogroup.com/>
_____________________________________________________
AG Dresden, HRB 2475
Geschäftsführer: Dr. Thomas Tribius, Martin Mildner
I have to correct myself. The error is reproducible for *all* clients.
Still the question: What can I do to analyze and avoid it?
A clone via ssh works:
hg clone --remotecmd=/home/myproject/bin/hg.sh
ssh://myproject@machine//opt/myproject/programs/current myproject
So the memory problem stems from
/usr/bin/python /home/myproject/bin/hg serve -d
-A /home/myproject/lib/mercurial/standard.out
-E /home/myproject/lib/mercurial/error.out -p
Python 2.5.1
Mercurial Distributed SCM (version 1.3.1)
Still I would like to see a working http-clone.