git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Rogan Dawes <discard@dawes.za.net>
To: Jon Smirl <jonsmirl@gmail.com>
Cc: git <git@vger.kernel.org>
Subject: Re: Creating objects manually and repack
Date: Fri, 04 Aug 2006 18:39:33 +0200	[thread overview]
Message-ID: <44D37845.5010009@dawes.za.net> (raw)
In-Reply-To: <9e4733910608040841v7f4f27efra63e5ead2656e07@mail.gmail.com>

Jon Smirl wrote:
> On 8/4/06, Linus Torvalds <torvalds@osdl.org> wrote:
>> I'd suggest against it, but you can (and should) just repack often enough
>> that you shouldn't ever have gigabytes of objects "in flight". I'd have
>> expected that with a repack every few ten thousand files, and most files
>> being on the order of a few kB, you'd have been more than ok, but
>> especially if you have large files, you may want to make things "every 
>> <n>
>> bytes" rather than "every <n> files".
> 
> How about forking off a pack-objects and handing it one file name at a
> time over a pipe. When I hand it the next file name I delete the first
> file. Does pack-objects make multiple passes over the files? This
> model would let me hand it all 1M files.
> 

I'd imagine that this would not necessarily save you a lot, if you have 
to write it to disk, and then read it back again. Your only chance here 
is if you stay in the buffer, and avoid actually writing to disk at all.

Of course, using a ramdisk/tmpfs for your object directories might be 
enough to save you. Just use a symlink to tmpfs for the objects 
directory, and leave the pack files on persistent storage.

That doesn't answer your question about how many passes pack-objects 
does. Nicholas Pitre should be able to answer that.

Rogan

  parent reply	other threads:[~2006-08-04 16:39 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-08-04  3:43 Creating objects manually and repack Jon Smirl
2006-08-04  3:58 ` Jeff King
2006-08-04  4:01 ` Linus Torvalds
2006-08-04  4:24   ` Jon Smirl
2006-08-04  4:46     ` Linus Torvalds
2006-08-04  5:01       ` Linus Torvalds
2006-08-04  5:11         ` Jon Smirl
2006-08-04 14:40         ` Jon Smirl
2006-08-04 14:50           ` Jon Smirl
2006-08-04 15:22             ` Linus Torvalds
2006-08-04 15:41               ` Jon Smirl
2006-08-04 16:01                 ` A Large Angry SCM
2006-08-04 16:11                   ` Jon Smirl
2006-08-04 16:32                     ` Linus Torvalds
2006-08-04 16:56                   ` Linus Torvalds
2006-08-04 16:39                 ` Rogan Dawes [this message]
2006-08-04 16:53                   ` Jon Smirl
2006-08-04 16:53                 ` Linus Torvalds
2006-08-04 17:17                   ` Jon Smirl
2006-08-04 17:29                     ` Linus Torvalds
2006-08-04 18:06                       ` Linus Torvalds
2006-08-04 18:24                         ` Junio C Hamano
2006-08-04 19:20                           ` Linus Torvalds
2006-08-04 19:31                             ` Carl Worth
2006-08-04 19:57                               ` Junio C Hamano
2006-08-04 20:08                                 ` Carl Worth
2006-08-04 20:08                                 ` Carl Worth
2006-08-04 20:12                                 ` Jakub Narebski
2006-08-04 20:30                                   ` Junio C Hamano
2006-08-04 20:37                                     ` Jakub Narebski
2006-08-05  4:15                     ` Martin Langhoff
2006-08-05  5:12                       ` Jon Smirl
2006-08-05  5:21                         ` Shawn Pearce
2006-08-05  5:40                           ` Jon Smirl
2006-08-05  5:52                             ` Shawn Pearce
2006-08-05  5:46                           ` Shawn Pearce

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=44D37845.5010009@dawes.za.net \
    --to=discard@dawes.za.net \
    --cc=git@vger.kernel.org \
    --cc=jonsmirl@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).