git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Nicolas Pitre <nico@cam.org>
To: Jakub Narebski <jnareb@gmail.com>
Cc: git@vger.kernel.org
Subject: Re: [PATCH] pack-objects: use of version 3 delta is now optional.
Date: Sun, 15 Oct 2006 14:51:08 -0400 (EDT)	[thread overview]
Message-ID: <Pine.LNX.4.64.0610151433310.17085@xanadu.home> (raw)
In-Reply-To: <egtu1r$813$1@sea.gmane.org>

[-- Attachment #1: Type: TEXT/PLAIN, Size: 1310 bytes --]

On Sun, 15 Oct 2006, Jakub Narebski wrote:

> Junio C Hamano wrote:
> 
> > I think that is sensible.  I also was thinking that we should
> > call the current one packv3 and the one with delta-base-offset
> > packv4.
> 
> Just curious: what was the difference between packv1 and packv2,
> and packv3 and packv4?

Pack v1 was really short-lived (one day or two).  It used a different 
encoding for object size and delta size than what exists today.  When 
the current encoding was adopted the pack version was bumped to 2 to 
make sure anyone, if any, who might have started to rely upon packs in 
those early days would not end up trying to use incompatible pack data.  
Backward compatibility was not a concern at all back then of course.  
So for all practical purposes just consider that pack version 1 never 
existed.

Pack version 3 simply redefined one bit in the delta encoding that was 
never used.  The former definition of the bit was implemented in the 
decode part, but attempts to use it in the encode part turned up to be 
way too costly for really really poor benefits.  for details just have a 
look at commit d60fc1c8649f80c006b9f493c542461e81608d4b.

As for pack v4... My opinion is that nothing justifies it so far.  So if 
I can convince Junio there shouldn't be any v4 just yet.


Nicolas

  reply	other threads:[~2006-10-15 18:51 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-10-15  6:29 Recent and near future backward incompatibilities Junio C Hamano
2006-10-15  7:44 ` [PATCH] pack-objects: use of version 3 delta is now optional Junio C Hamano
2006-10-15  9:09   ` Jakub Narebski
2006-10-15 15:53   ` Nicolas Pitre
2006-10-15 18:10     ` Junio C Hamano
2006-10-15 18:18       ` Jakub Narebski
2006-10-15 18:51         ` Nicolas Pitre [this message]
2006-10-16  4:45           ` Junio C Hamano
2006-10-16 13:27             ` Nicolas Pitre
2006-10-15 18:30       ` Nicolas Pitre
2006-10-15 20:00         ` A Large Angry SCM
2006-10-16  2:52           ` Nicolas Pitre
2006-10-15 18:57       ` Linus Torvalds
2006-10-16 13:43         ` Nicolas Pitre
2006-10-17 16:12           ` Junio C Hamano
2006-10-17 16:51             ` Nicolas Pitre
2006-10-15 19:29       ` A Large Angry SCM
2006-10-15 14:52 ` Recent and near future backward incompatibilities Horst H. von Brand
2006-10-15 15:34 ` Nicolas Pitre
2006-10-15 18:14   ` Junio C Hamano
2006-10-15 22:40 ` Theodore Tso
2006-10-15 23:52   ` Linus Torvalds
2006-10-16  2:13     ` Stephen Hemminger

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=Pine.LNX.4.64.0610151433310.17085@xanadu.home \
    --to=nico@cam.org \
    --cc=git@vger.kernel.org \
    --cc=jnareb@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).