git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 5/5] Add documentation for --window-bytes, pack.windowBytes

From
Nicolas Pitre <nico@cam.org>
Date
Jul 12, 2007, 04:35 UTC
Message-ID
<alpine.LFD.0.999.0707120028020.32552@xanadu.home>
In-Reply-To
<1184210058514-git-send-email-bdowning@lavos.net>
On Wed, 11 Jul 2007, Brian Downing wrote:
Show 20 quoted lines
> Signed-off-by: Brian Downing <bdowning@lavos.net>
> ---
>  Documentation/config.txt           |    5 +++++
>  Documentation/git-pack-objects.txt |    8 ++++++++
>  Documentation/git-repack.txt       |    8 ++++++++
>  3 files changed, 21 insertions(+), 0 deletions(-)
> 
> diff --git a/Documentation/config.txt b/Documentation/config.txt
> index aeece84..83c7dc1 100644
> --- a/Documentation/config.txt
> +++ b/Documentation/config.txt
> @@ -592,6 +592,11 @@ pack.depth::
>  	The maximum delta depth used by gitlink:git-pack-objects[1] when no
>  	maximum depth is given on the command line. Defaults to 50.
>  
> +pack.windowBytes::
> +	This option provides an additional limit on top of `pack.window`;
> +	the window size will dynamically scale down so as to not take
> +	up more than N bytes in memory.
> +
This doesn't say what the default (unlimited) is.
Show 18 quoted lines
>  pack.compression::
>  	An integer -1..9, indicating the compression level for objects
>  	in a pack file. -1 is the zlib default. 0 means no
> diff --git a/Documentation/git-pack-objects.txt b/Documentation/git-pack-objects.txt
> index e3549b5..21ed198 100644
> --- a/Documentation/git-pack-objects.txt
> +++ b/Documentation/git-pack-objects.txt
> @@ -85,6 +85,14 @@ base-name::
>  	times to get to the necessary object.
>  	The default value for --window is 10 and --depth is 50.
>  
> +--window-bytes=[N]::
> +	This option provides an additional limit on top of `--window`;
> +	the window size will dynamically scale down so as to not take
> +	up more than N bytes in memory.  This is useful in
> +	repositories with a mix of large and small objects to not run
> +	out of memory with a large window, but still be able to take
> +	advantage of the large window for the smaller objects.
Ditto here.

Also it is a bit akward to specify a size in bytes when you probably want to specify a limit which is in the megabyte range. I'd call them --window_mem and pack.windowmemory, and allow for unit suffixes of 'k', 'm', or 'g' to be supported if not already.

Nicolas
Previous: Brian DowningNext: Nicolas Pitre
Message 9 of 10 in “Memory-limited pack-object window support”
  1. 0/5 Memory-limited pack-object window supportBrian Downing, Jul 12, 2007
  2. 1/5 Don't try to delta if target is much smaller than sourceBrian Downing, Jul 12, 2007
  3. 2/5 Support fetching the memory usage of a delta indexBrian Downing, Jul 12, 2007
  4. 3/5 Add pack-objects window memory usage limitBrian Downing, Jul 12, 2007
  5. Nicolas PitreJul 12, 2007
  6. Brian DowningJul 12, 2007
  7. 4/5 Add --window-bytes option to git-repackBrian Downing, Jul 12, 2007
  8. 5/5 Add documentation for --window-bytes, pack.windowBytesBrian Downing, Jul 12, 2007
  9. Nicolas PitreJul 12, 2007
  10. Nicolas PitreJul 12, 2007

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.