* running out of memory when doing a clone of a large repository?
@ 2008-11-12 18:49 Paul E. Rybski
2008-11-13 3:22 ` Nicolas Pitre
0 siblings, 1 reply; 3+ messages in thread
From: Paul E. Rybski @ 2008-11-12 18:49 UTC (permalink / raw)
To: git
Hi,
I've recently started evaluating git for use on one of my projects. I
used git-svn to convert a fairly large subversion repository and one of
its branches into two separate git repositories following the
instructions found here:
http://www.simplisticcomplexity.com/2008/03/05/cleanly-migrate-your-subversion-repository-to-a-git-repository/
>From that, I created a 1.5G repository from the trunk of the subversion
repo and a 1.1G repository from one of the branches. I then tried to
clone the repositories from one machine to another via ssh and the
smaller 1.1G repository of the subversion branch (with 1932 commits)
came over just fine but the larger 1.5G repository of the subversion
trunk (5865 commits) died with the following error:
remote: Counting objects: 48415, done.
remote: warning: suboptimal pack - out of memory
error: git-upload-pack: git-pack-objects died with error.
fatal: git-upload-pack: aborting due to possible repository corruption
on the remote side.
remote: aborting due to possible repository corruption on the remote side.
fatal: early EOF
fatal: index-pack failed
Is this simply because the git repository is too large for the machine
that's trying to send it over ssh? Is there a way to restrict the
memory usage of git or do I need to get more RAM or somehow not import
the full subversion history of my original trunk?
I'm using Ubuntu 8.04.1 on both machines and using the Ubuntu packages
of git version 1.5.4.3. The machine holding the repository is a 5-year
old AthlonXP 3200 with 1G RAM and 32-bit Ubuntu. The machine I'm
cloning the repository on is a more recent Intel Dual Core Quad Q6600
with 4GRAM and 64-bit Ubuntu.
Any advice would be greatly appreciated.
Thanks!
-Paul
--
Paul E. Rybski, Ph.D., Systems Scientist
The Robotics Institute, Carnegie Mellon University
Phone: 412-268-7417, Fax: 412-268-7350
Web: http://www.cs.cmu.edu/~prybski
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: running out of memory when doing a clone of a large repository?
2008-11-12 18:49 running out of memory when doing a clone of a large repository? Paul E. Rybski
@ 2008-11-13 3:22 ` Nicolas Pitre
2008-11-13 20:09 ` Paul E. Rybski
0 siblings, 1 reply; 3+ messages in thread
From: Nicolas Pitre @ 2008-11-13 3:22 UTC (permalink / raw)
To: Paul E. Rybski; +Cc: git
On Wed, 12 Nov 2008, Paul E. Rybski wrote:
> Hi,
> I've recently started evaluating git for use on one of my projects. I
> used git-svn to convert a fairly large subversion repository and one of
> its branches into two separate git repositories following the
> instructions found here:
>
> http://www.simplisticcomplexity.com/2008/03/05/cleanly-migrate-your-subversion-repository-to-a-git-repository/
>
> From that, I created a 1.5G repository from the trunk of the subversion
> repo and a 1.1G repository from one of the branches. I then tried to
> clone the repositories from one machine to another via ssh and the
> smaller 1.1G repository of the subversion branch (with 1932 commits)
> came over just fine but the larger 1.5G repository of the subversion
> trunk (5865 commits) died with the following error:
>
> remote: Counting objects: 48415, done.
> remote: warning: suboptimal pack - out of memory
> error: git-upload-pack: git-pack-objects died with error.
> fatal: git-upload-pack: aborting due to possible repository corruption
> on the remote side.
> remote: aborting due to possible repository corruption on the remote side.
> fatal: early EOF
> fatal: index-pack failed
>
> Is this simply because the git repository is too large for the machine
> that's trying to send it over ssh?
Possibly.
> Is there a way to restrict the memory usage of git or do I need to get
> more RAM or somehow not import the full subversion history of my
> original trunk?
It is possible that the inport from svn didn't produce a fully packed
repository. Try a "git repack -a -f -d" on the server machine. If you
get the same out-of-memory problem then ideally you should copy the
whole directory to a bigger machine and run 'git repack -a -f -d" there.
Then you may copy it back to the small machine and subsequent clone
requests should be just fine.
You could also investigate the pack.windowMemory configuration variable
on the server side. If you have lots of big files then setting this to
64m for example may help.
> I'm using Ubuntu 8.04.1 on both machines and using the Ubuntu packages
> of git version 1.5.4.3.
There was a bug in versions prior to v1.5.6.4 affecting memory usage.
Upgrading to this version or later on the server machine might help too.
> The machine holding the repository is a 5-year
> old AthlonXP 3200 with 1G RAM and 32-bit Ubuntu. The machine I'm
> cloning the repository on is a more recent Intel Dual Core Quad Q6600
> with 4GRAM and 64-bit Ubuntu.
>
> Any advice would be greatly appreciated.
>
> Thanks!
>
> -Paul
>
> --
> Paul E. Rybski, Ph.D., Systems Scientist
> The Robotics Institute, Carnegie Mellon University
> Phone: 412-268-7417, Fax: 412-268-7350
> Web: http://www.cs.cmu.edu/~prybski
> --
> To unsubscribe from this list: send the line "unsubscribe git" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
Nicolas
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: running out of memory when doing a clone of a large repository?
2008-11-13 3:22 ` Nicolas Pitre
@ 2008-11-13 20:09 ` Paul E. Rybski
0 siblings, 0 replies; 3+ messages in thread
From: Paul E. Rybski @ 2008-11-13 20:09 UTC (permalink / raw)
To: Nicolas Pitre; +Cc: git
Hi,
Thanks for the great suggestions. It turns out that running the command:
git repack -a -f -d
on the newly converted git repository seemed to fix my immediate
crashing-while-cloning problem. I was able to clone via ssh from the
older Ubuntu machine with 1G of RAM using git version 1.5.4.3 (the
packaged version in Hardy Heron).
I also downloaded what seems to be the latest of the 1.5 series,
1.5.6.5, installed that from source, and successfully tested that out.
I'll try using that to avoid some of the memory problems of the previous
versions. As I'm still comparatively a complete newbie when it comes to
git, I don't have a clue yet as to what's in the 1.6 codebase but
hopefully I'll be able to determine which version I want to work with soon.
Thanks again for the help! I really appreciate it.
-Paul
Nicolas Pitre wrote:
> On Wed, 12 Nov 2008, Paul E. Rybski wrote:
>
>> Hi,
>> I've recently started evaluating git for use on one of my projects. I
>> used git-svn to convert a fairly large subversion repository and one of
>> its branches into two separate git repositories following the
>> instructions found here:
>>
>> http://www.simplisticcomplexity.com/2008/03/05/cleanly-migrate-your-subversion-repository-to-a-git-repository/
>>
>> From that, I created a 1.5G repository from the trunk of the subversion
>> repo and a 1.1G repository from one of the branches. I then tried to
>> clone the repositories from one machine to another via ssh and the
>> smaller 1.1G repository of the subversion branch (with 1932 commits)
>> came over just fine but the larger 1.5G repository of the subversion
>> trunk (5865 commits) died with the following error:
>>
>> remote: Counting objects: 48415, done.
>> remote: warning: suboptimal pack - out of memory
>> error: git-upload-pack: git-pack-objects died with error.
>> fatal: git-upload-pack: aborting due to possible repository corruption
>> on the remote side.
>> remote: aborting due to possible repository corruption on the remote side.
>> fatal: early EOF
>> fatal: index-pack failed
>>
>> Is this simply because the git repository is too large for the machine
>> that's trying to send it over ssh?
>
> Possibly.
>
>> Is there a way to restrict the memory usage of git or do I need to get
>> more RAM or somehow not import the full subversion history of my
>> original trunk?
>
> It is possible that the inport from svn didn't produce a fully packed
> repository. Try a "git repack -a -f -d" on the server machine. If you
> get the same out-of-memory problem then ideally you should copy the
> whole directory to a bigger machine and run 'git repack -a -f -d" there.
> Then you may copy it back to the small machine and subsequent clone
> requests should be just fine.
>
> You could also investigate the pack.windowMemory configuration variable
> on the server side. If you have lots of big files then setting this to
> 64m for example may help.
>
>> I'm using Ubuntu 8.04.1 on both machines and using the Ubuntu packages
>> of git version 1.5.4.3.
>
> There was a bug in versions prior to v1.5.6.4 affecting memory usage.
> Upgrading to this version or later on the server machine might help too.
>
>> The machine holding the repository is a 5-year
>> old AthlonXP 3200 with 1G RAM and 32-bit Ubuntu. The machine I'm
>> cloning the repository on is a more recent Intel Dual Core Quad Q6600
>> with 4GRAM and 64-bit Ubuntu.
>>
>> Any advice would be greatly appreciated.
>>
>> Thanks!
>>
>> -Paul
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2008-11-13 20:10 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-11-12 18:49 running out of memory when doing a clone of a large repository? Paul E. Rybski
2008-11-13 3:22 ` Nicolas Pitre
2008-11-13 20:09 ` Paul E. Rybski
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox