• Bug#263454: Huge memory consumption with /etc in darcs

    From David Roundy@1:229/2 to Chris Niekel on Thu Aug 12 13:00:10 2004
    From: [email protected]

    On Wed, Aug 04, 2004 at 09:16:12PM +0200, Chris Niekel wrote:
    Hi,

    Hello!

    I've tested 0.9.23-1 as well, and although memory-usage seems to
    increase slower, it still went past 500MB. I had set a limit there (to
    avoid random things getting killed) (ulimit -v 512000).
    du -ks /etc yields:
    33076 /etc

    This is a known issue, and I'm pretty much resigned to living with it.
    Most darcs operations use about 10 times the size of the data involved
    (this is obviously only crudely true). The initial record for some reason seems to take something like twice what I'd expect by the x10 rule, and I haven't been able to track down why--memory usage debugging in a lazy garbage-collected language isn't easy.

    This is a problem I've taken a shot at, spent a week or so on, and then
    given up on. I'd love for someone else to take a shot at it, but am not terribly optimistic, and there's no point spending too long working on the memory usage of the initial record, since a darcs get of the recorded patch will still take ten times the size of the patch since it'll have to hold
    the parsed patch in memory.

    If I can do more for testing, don't hesitate to contact me.

    Well, I'd guess that the memory usage for this record ought to be somewhere around 600 to 700 megabytes. If your machine can handle that (it should be pretty virtual-memory-friendly), if you could verify that it'll run with
    that much memory at its limit, that would be nice.

    As far as workarounds go, you add and record one subdirectory at a time.
    This produces (obviously) smaller patches.
    --
    David Roundy
    http://www.abridgegame.org

    -----BEGIN PGP SIGNATURE-----
    Version: GnuPG v1.2.4 (GNU/Linux)

    iD8DBQFBG0kGQ6uZI9PVvOwRAtuaAKDMLHRP7Okr/5XGVAZndL+1OGoj0wCfVlZM GSkMAJ/9cbj7Igd4thywzWU=
    =2P/C
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: you cannot sedate... all the things you hate (1:229/2)
  • From Chris Niekel@1:229/2 to All on Wed Aug 4 17:30:10 2004
    From: [email protected]

    Package: darcs
    Version: 0.9.22-1
    Severity: normal

    Hi,

    I tried to put /etc in darcs, but that gives an enormous memory
    consumption.

    I did:
    cd /etc
    darcs init
    darcs add -r *
    darcs record -a

    And after a while random things started to crash, because darcs used
    more than available memory.

    Regards,
    Chris Niekel


    -- System Information:
    Debian Release: 3.1
    APT prefers testing
    APT policy: (500, 'testing'), (50, 'unstable')
    Architecture: i386 (i686)
    Kernel: Linux 2.4.26-1-686
    Locale: LANG=C, LC_CTYPE=C

    Versions of packages darcs depends on:
    ii libc6 2.3.2.ds1-13 GNU C Library: Shared libraries an ii libcurl2 7.11.2-1 Multi-protocol file transfer libra ii libgmp3 4.1.3-1 Multiprecision arithmetic library ii libncurses5 5.4-4 Shared libraries for terminal hand ii libreadline4 4.3-11 GNU readline and history libraries ii libssl0.9.7 0.9.7d-4 SSL shared libraries
    ii zlib1g 1:1.2.1.1-5 compression library - runtime

    -- no debconf information


    --
    To UNSUBSCRIBE, email to [email protected]
    with a subject of "unsubscribe". Trouble? Contact [email protected]

    --- SoupGate-Win32 v1.05
    * Origin: you cannot sedate... all the things you hate (1:229/2)
  • From Isaac Jones@1:229/2 to Chris Niekel on Wed Aug 4 17:50:08 2004
    From: [email protected]

    Chris Niekel <[email protected]> writes:

    Package: darcs
    Version: 0.9.22-1
    Severity: normal

    Hi,

    I tried to put /etc in darcs, but that gives an enormous memory
    consumption.

    Hi Chris. Please try the new darcs 0.9.23 which I uploaded yesterday;
    it fixes some memory problems to address exactly this issue :)


    peace,


    isaac


    --
    To UNSUBSCRIBE, email to [email protected]
    with a subject of "unsubscribe". Trouble? Contact [email protected]

    --- SoupGate-Win32 v1.05
    * Origin: you cannot sedate... all the things you hate (1:229/2)
  • From Chris Niekel@1:229/2 to All on Wed Aug 4 21:50:06 2004
    From: [email protected]

    Hi,

    I've tested 0.9.23-1 as well, and although memory-usage seems to
    increase slower, it still went past 500MB. I had set a limit there (to
    avoid random things getting killed) (ulimit -v 512000).
    du -ks /etc yields:
    33076 /etc


    If I can do more for testing, don't hesitate to contact me.

    Regards,
    Chris Niekel

    -----BEGIN PGP SIGNATURE-----
    Version: GnuPG v1.2.4 (GNU/Linux)

    iD8DBQFBETX8gQ3S2XWlk0sRAmmTAKDi49da+goU79JqewaUwSU1gfEAAQCfeaDM eqWPbhAODs8iEA9GsFBz25o=
    =fsPN
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: you cannot sedate... all the things you hate (1:229/2)