[darcs-devel] [issue1075] pull of GHC HEAD into GHC STABLE takes a long time

Thorkil Naur bugs at darcs.net
Sun Sep 14 12:19:29 UTC 2008


New submission from Thorkil Naur <naur at post11.tele.dk>:

This is in response to http://bugs.darcs.net/msg5703:

> Author: simonpj       Date: 2008-08-26.09:22:03
> | I tried to pull the GHC HEAD into this STABLE repository, both from http://darcs.haskell.org/ghc and
> | from a
> | local repository. In both cases, I interrupted the pull after it's having spent 100% CPU for more than
> | an
> | hour without apparent progress.
> |
> | So this seems to be a dead end.
>
> Not a dead end at all!  It's another darcs bug!  Having pull take 100% of the CPU for an hour is an absolute 
disaster 
when it comes to user confidence.  If you have a reproducible test case, I urge you to examine it.
>
> Simon

To examine this case more closely, I have used the basic machinery provided by hpc (Haskell Program Coverage). 
Briefly, I intrumented a recent darcs as indicated in the attached patch to print the hpc tix counters to a series 
of files regularly, once every second. This modified darcs also needed compiling with -fhpc (the ./configure flag -
-enable-hpc). By subtracting (hpc combine --function=SUB) two such sets of counters, one gets a set of counters 
representing the activity between the writing of the two files. Some additional postprocessing (hpc markup --
highlight-covered) then produces a set of .html files with the active parts of the source code highlighted.

The attached strobeHpc_darcs_3600_SUB_3599_20080914_130546.tar.gz file represents the result of examining darcs 
pulling GHC HEAD from a local repository into GHC STABLE in the last second before having executed for one whole 
hour. Only .html files representing darcs source files with actual activity have been included. Producing such a 
set of files from two .tix files is done by a bit of shell'ery (the attached strobeHpcDiff1.sh).

I have tried to produce the same set of .html files for the same run, but representing the last 10 minutes before 
the hour and they were identical to the ones of the last second. So I feel quite confident that the .html files 
represent faithfully what actually goes on.

It seems encouraging that apparently only a small fraction of the darcs code is active, but I have, myself, not 
investigated any further. It may be that the information in the .html files doesn't add to a case like this, but I 
suggest that somebody with knowledge about darcs internals take a look and judge. 

Best regards
Thorkil

----------
files: Crude_strobes_using_hpc.dpatch.gz
messages: 6009
nosy: dagit, kowey, thorkilnaur
priority: bug
status: unread
title: pull of GHC HEAD into GHC STABLE takes a long time

__________________________________
Darcs bug tracker <bugs at darcs.net>
<http://bugs.darcs.net/issue1075>
__________________________________
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Crude_strobes_using_hpc.dpatch.gz
Type: application/x-gzip
Size: 9742 bytes
Desc: not available
Url : http://lists.osuosl.org/pipermail/darcs-devel/attachments/20080914/08f100ea/attachment.bin 


More information about the darcs-devel mailing list