Re: Funny error with git gc...
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- May 15, 2009, 19:18 UTC
- Message-ID
- <alpine.DEB.1.00.0905152115220.26154@pacific.mpi-cbg.de>
- In-Reply-To
- <alpine.DEB.1.00.0905152111140.26154@pacific.mpi-cbg.de>
Hi,
On Fri, 15 May 2009, Johannes Schindelin wrote:
Show 15 quoted lines
> On Fri, 15 May 2009, Johannes Schindelin wrote: > > > > > [core] > > > packedGitWindowSize = 16k > > > packedGitLimit = 1M > > > > > > you should hopefully be able to repack (slowly) even with a low file > > > descriptor limit, because of the total limit on the size. > > > > I don't think so, because the window size has nothing to do with the > > amount of open windows, right? > > Obviously I overlooked the "packedGitLimit" setting. Still, just a > work-around, not a solution that tackles the problem heads-on.
But it worked with the work-around, and not with my heads-on approach. The problem is in xmkstemp(), but when I apply this patch on top of my MAKESHIFT PATCH:
-- snip --
diff --git a/wrapper.c b/wrapper.c index d8efb13..47806ba 100644 --- a/wrapper.c +++ b/wrapper.c @@ -192,8 +192,13 @@ int xmkstemp(char *template) int fd; fd = mkstemp(template); + if (fd < 0) { + release_pack_memory((size_t)-1ll, -1); + fd = mkstemp(template); + } if (fd < 0) - die("Unable to create temporary file: %s", strerror(errno)); + die("Unable to create temporary file '%s': %s", + template, strerror(errno)); return fd; } -- snap -- I get an even funnier error: fatal: Unable to create temporary file '.git/objects/pack/tmp_pack_rvhvZb': Invalid argument error: failed to run repack Oh well, I'll let it sit over the weekend... Ciao, Dscho