[darcs-users] whatsnew -l much slower in darcs 2.12.5

Evan Laforge qdunkan at gmail.com
Sun Jun 25 05:00:00 UTC 2017


I've been using the darcs 2.10.1 binary available for OS X, but I
recently tried 2.12.5 and whatsnew -l is much slower.  E.g.:

% time ~src/hs/darcs-2.12.5/dist/build/Darcs/darcs  w -l
...
~src/hs/darcs-2.12.5/dist/build/Darcs/darcs w -l  2.48s user 0.47s
system 101% cpu 2.909 total

% time darcs w -l
...
darcs w -l  0.13s user 0.04s system 96% cpu 0.181 total

Restricting to a single file, e.g. 'darcs w -l X' is still very slow.
Without -l, both old and new are fast.  This is on a medium sized
repo:

% darcs show repo
        Format: hashed, darcs-2
          Root: /Users/elaforge/src/seq/main
      Pristine: HashedPristine
         Cache: thisrepo:/Users/elaforge/src/seq/main,
cache:/Users/elaforge/Library/Caches/darcs, repo:hub.darcs.net:karya
boringfile Pref: boring
Default Remote: hub.darcs.net:karya
   Num Patches: 5692

The slowdown is also visible in the linux version.  On linux, I tried
running with strace, and it seems to be constantly running
mkdir("..cache/patches"), stat(".../.cache/patches"), then
link("_darcs/patches/...", ".cache/patches") -> EEXIST, repeating for
many different patches.  It doesn't seem to get stuck at any time,
just be processing lots of patches.  wc on the strace output shows
130k lines.  So maybe that's related?

Anyone else see this?


More information about the darcs-users mailing list