[darcs-users] darcs problems w/ large archives?

Kevin Ollivier kevino at tulane.edu
Sun Oct 10 20:39:22 UTC 2004


Hi all,

First, let me note I'm a 'newbie' just learning darcs so I apologize if 
I have missed some documentation, etc. that deals with this specific 
issue. Basically, what I'm doing is trying to create a darcs archive of 
my local wxWidgets tree so that I can work against the same local tree 
on a Windows, Mac and Linux box. This allows me to test on each 
platform, write any platform specific code, and not have to copy 
patches back and forth, patching and undoing patches over and over. 
Darcs seems a nice fit for this because it's quite simple to get up and 
running with, and doesn't require massive configuration of my machine 
(like subversion, for example, does).

Anyways, what I've done is gone into my CVS repository, did a "darcs 
initialize", then a "darcs add -r *" to add everything in the wxWidgets 
tree (it's rather large), and then "darcs record --all" which produced 
a 150MB patch in my _darcs/patches directory. I did this on Mac OS X.3. 
It took quite a long time (possibly over an hour), but I'm sure only 
the initial patch has this issue. Then, I started up Apache and created 
an alias as in the Getting Started instructions. So far so good.

Then, I went to my Windows machine to download a local repository 
there. But when I run "darcs get http://192.168.1.101/wxWidgets", it 
downloads the 150MB patch and then tries to do something with it, but I 
get the "not enough heap space" error that suggests I call +RTS and set 
the memory. I tried adding +RTS -M512M -RTS, which registered the 
updated heap size but again ran out of heap space. I went all the way 
up to 1000M and still, every time, the heap space gets exhausted. Going 
much above that causes GHC to bomb out with memory allocation errors. 
(I have about 768MB of physical RAM in the machine.)

 From reading the archives, I get a sense that what is happening is that 
darcs is trying to read the entire patch (which is basically the entire 
contents of the archive) into memory and that's where the problems lie. 
Is there anyway I can workaround this issue or reduce the size of the 
patch somehow? Darcs seems to be a rather good fit for what I'm trying 
to do here, so I'd like to find some way to get it running.

Thanks in advance for any help you can give on the matter.

Kevin 
  





More information about the darcs-users mailing list