On Wed, Sep 05, 2007 at 08:50:04AM +0000, Steven Grimm wrote:=20 =20 there is an issue with that: repack is memory and CPU intensive. Of course renicing the process deals with the CPU issue, but not with the memory one. I've often seen repacks eat more than 300 to 400Mo of memory on not so big repositories: it seems (and experience tells me that, not looking at the code) that if you have some big binary blobs (we have =2Eswf's and .fla's in our repository) it can consume quite a lot of RAM to (presumably) compute efficient deltas. Sadly there is no way to "renice" the ram usage of a process. Once a repack is launched, it will make your system swap, and put the whole computer on its knees. Well that's what crons are for. When you install a SGBD in a reasonable enough distro, it comes with the optimizing scripts in crons, launched at a reasonable period of the day (localtime). So the comparison doesn't hold. And that's exactly the problem: it's quite hard to ship git with an optimizing cron task, because we can't know where the user will keep his repositories, and when he works, so you have somehow to do it yourself. Or you can deal with that with a "rule". At work, we have our devel trees under $HOME/dev/, so the cron we use is just a (roughly): find $HOME/dev/ -name .git -type d -maxdepth 4 | while read repo do GIT_DIR=3D"$repo" git gc done As we work on NFS, with a new developper, we can just setup the cron for him at a date where he's not supposed to be at work, and that's it. I'm not sure there is a good solution at all. Or we could also provide a: git-coffee-break command that would tell git: do whatever you want with this computer in the next 10 minutes, there won't be anyone watching, but I assume tea-lovers will feel excluded. --=20 =C2=B7O=C2=B7 Pierre Habouzit =C2=B7=C2=B7O madcoder@debia= n.org OOO http://www.madism.org
| Zhang, Yanmin | AIM7 40% regression with 2.6.26-rc1 |
| Con Kolivas | [PATCH][RSDL-mm 0/7] RSDL cpu scheduler for 2.6.21-rc3-mm2 |
| Nick Piggin | [patch 4/6] mm: merge populate and nopage into fault (fixes nonlinear) |
| Andrew Morton | -mm merge plans for 2.6.23 |
git: | |
| Gerrit Renker | [PATCH 15/37] dccp: Set per-connection CCIDs via socket options |
| David Miller | Re: [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
| David Miller | [GIT]: Networking |
| Natalie Protasevich | [BUG] New Kernel Bugs |
