2017-09-23 21:37:51

by Bob Tracy

[permalink] [raw]
Subject: [INFO] "git ac --auto" for kernel repo

A recent pull on Linus' kernel repo triggered a "git gc --auto"
maintenance action that *finally* finished after beating my poor Alpha
PWS 433au to death for 32 hours.

Here's a snapshot of the ".git/objects/pack" directory for the repo:

total 1366084
190535 12 drwxr-xr-x 2 root root 12288 Sep 23 15:31 .
190534 4 drwxr-xr-x 4 root root 4096 Sep 23 15:10 ..
191004 153720 -r--r--r-- 1 root root 157249268 Sep 23 15:10 pack-d11d36b9439b018666251bf101b920e27e3607e4.idx
190906 1212348 -r--r--r-- 1 root root 1240224629 Sep 23 15:08 pack-d11d36b9439b018666251bf101b920e27e3607e4.pack

The "gc" action ran for more than a day before the temporary pack file
showed up. When the smoke finally cleared about a half-hour ago, the
other pack files had evidently been consolidated into (or replaced by)
what you see above.

Only reason I figured this might be of general interest to the
community, I saw other people questioning how long the automatic "gc"
action takes to run. Reasonable (for some definition of the word)
machines were said to take a few hours in the worst case scenario of
several loose objects in a repo the size of the one containing 2.6 and
later kernel versions.

Definitely not looking to make this maintenance action a regular thing.
The system was barely usable during the time it was running, but only
having 1.5 GB RAM (maxed-out) definitely has a lot to do with that :-).

--Bob