On 17/07/12 21:50, Owen Stephens wrote:

Can you get darcs to go into the hang from the current repo state (i.e. without nuking pending)?

I've created a test repository which exhibits the problem, files are "sanitized" from my slow repo by munging the names and content in a consistent way so it structurally reflects what I have but doesn't have any real data in the files, just gibberish.

You can get the repo including unrecorded working files here:
    https://s3.amazonaws.com/darcstestcase/darcs-test-repo.tar.bz2
   (Sorry it is 180 Mb or so)

And the instructions for seeing the problem...

   tar -xjvf darcs-test-repo.tar.bz2
   cd repo
   ls -l _darcs/patches/pending
   # See that it's small

   darcs add --recursive .
   ls -l _darcs/patches/pending
   # See that it's large, for bonus points
   less _darcs/patches/pending
   # See that the reason it seems to be large is the inclusion of
   (base64) binary data of files which have been removed (that is, the
   previous binary data is included in the pending)

   # Now, we record a subset, have your stopwatch ready
   darcs record -la ./1b267619/8cd97521/a9c47284 -m "Slow"
   # Very slow, takes about 5 minutes on my machine

   # Unrecord that so we are back to square one again (takes about 30
   seconds on my machine)
   darcs unrecord -p "Slow" -a

   # now we remove the pending file and record that same subset to see
   the speed difference
   rm _darcs/patches/pending
   darcs record -la ./1b267619/8cd97521/a9c47284 -m "Fast"
   # Very fast, 1 second or less

Hopefully that is of use to the darcs team.

_______________________________________________
darcs-users mailing list
[email protected]
http://lists.osuosl.org/mailman/listinfo/darcs-users

Reply via email to