Problem setting up public packed repository

From: Panagiotis Issaris <hidden>
Date: 2016-06-15 22:42:42

Hi

I'm having trouble setting up a public GIT repository. After using git-push
everything works fine, but the repository is _big_ (261MB). But, I can clone it
without any problem. If I "git-pack -a -d" and "git-prune-packed" it, the
repository is nicely shrinked to 14MB _but_ I can't clone it anymore. It starts
alright and seems to look for the pack, but it just hangs at that point...

To illustrate this, I have made a "cp -lr" copy of that public tree [1], one as it
was after git-push (well in fact, it it a packed/prune-packed one, unpacked
again) and another which is packed/prune-packed (the 14MiB one).

Trying to clone it shows this (both with git-clone and cg-clone):

takis@poseidon:/tmp$ cg-clone http://lumumba.uhasselt.be/takis/git/ffmpeg-h264.git
defaulting to local storage area
Fetching head...
Fetching objects...
progress: 38 objects, 159434 bytes
cg-clone: interrupted

takis@poseidon:/tmp$ cg-clone http://lumumba.uhasselt.be/takis/git/ffmpeg-h264-test.git
defaulting to local storage area
Fetching head...
Fetching objects...
Getting alternates list for http://lumumba.uhasselt.be/takis/git/ffmpeg-h264-test.git/
Getting pack list for http://lumumba.uhasselt.be/takis/git/ffmpeg-h264-test.git/
progress: 0 objects, 0 bytes
cg-clone: interrupted


With the packed/prune-packed repository it just hangs with the "progress: 0
objects, 0 bytes" message. So, I decided to have look what might be going on, if
any data was actually getting in and that I was maybe just being to impatient:

takis@poseidon:/tmp/a$ ps x|grep git
18386 pts/9    S+     0:00 /bin/sh /home/takis/bin/git-clone http://lumumba.uhasselt.be/takis/git/ffmpeg-h264-test.git
18400 pts/9    S+     0:00 git-http-fetch -v -a -w heads/master heads/master http://lumumba.uhasselt.be/takis/git/ffmpeg-h264-test.git/
18416 pts/10   S+     0:00 grep git

takis@poseidon:/tmp/a$ strace -f -p 18400
Process 18400 attached - interrupt to quit
select(0, [], [], [], {0, 48000})       = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 0)     = 0
gettimeofday({1160169868, 454932}, NULL) = 0
gettimeofday({1160169868, 454989}, NULL) = 0
select(0, [], [], [], {0, 50000})       = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 0)     = 0
gettimeofday({1160169868, 506226}, NULL) = 0
gettimeofday({1160169868, 506277}, NULL) = 0
select(0, [], [], [], {0, 50000})       = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 0)     = 0
gettimeofday({1160169868, 558245}, NULL) = 0
gettimeofday({1160169868, 558296}, NULL) = 0
select(0, [], [], [], {0, 50000})       = 0 (Timeout)
poll([{fd=4, events=POLLIN}], 1, 0)     = 0
gettimeofday({1160169868, 610227}, NULL) = 0
gettimeofday({1160169868, 610277}, NULL) = 0
...

And this goes on and on and on... and there seems to be no data getting in.
(Ofcourse at first I had just done a "du -h" of the clone target dir, but that
didn't grow. To make sure git wasn't using a hidden dir somewhere or keeping all
the pulled-in-data in-memory or something, I decided to look with strace).

What am I doing wrong? Any hints?

I am using the current git-GIT.

Thanks in advance for any replies! :)

With friendly regards,
Takis

[1] I know about the "-l" and "-s" flags, but I wanted to be 100% sure that it
were just copies, and no references would be pointing from here to there...
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help