[Bug 696480] [NEW] Natty and Maverick's tar versions generate different tarballs in some cases (when link is 100 characters)

Launchpad Bug Tracker 696480 at bugs.launchpad.net
Sun Jan 2 19:35:42 UTC 2011


You have been subscribed to a public bug by Iain Lane (laney):

Binary package hint: tar

Hiya,

I noticed that when trying to recreate tarballs using pristine-tar on
Maverick which were created on a Natty system, the following error was
produced:

  xdelta: /tmp/pristine-tar.btHqNUh80W/f-spot_0.8.2.orig.tar.gz.tmp: Checksum validation failed, expected: 6987fc71fa53c13423c75f42494b8f14, received: 1505f71bf1cc573fcb3b2d9afcc2f6ab
  xdelta: /tmp/pristine-tar.58rbIzXoHf/recreatetarball: Checksum validation failed, expected: 3ce9bc1ffb83a38a7707b4cc5f890323, received: 793785f1223e3c5543e14aad5b7129eb
  xdelta: expected from file (/tmp/pristine-tar.58rbIzXoHf/recreatetarball) of length 23541760 bytes
  /usr/bin/pristine-tar: Failed to reproduce original tarball. Please file a bug report.
  /usr/bin/pristine-tar: failed to generate tarball

This is due to the following Debian bugs:

  http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=522858
  http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=603231
  http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=602907

causing Natty's tar to create different tarballs to Maverick's in some
cases (Debian reverted an old patch regarding the representation of
paths with exactly 100 characters)

Backporting the patches from the first two bugs linked above restores
compatibility by introducing an environment variable that restores the
old behaviour (which pristine-tar relies on) when set.

Test case
=========

1. sudo apt-get install tar pristine-tar git
2. git clone git://github.com/iainlane/f-spot.git
3. git branch --track pristine-tar origin/pristine-tar
4. pristine-tar checkout f-spot_0.8.2.orig.tar.gz
<ERROR>
5. <install new tar>
6. pristine-tar checkout f-spot_0.8.2.orig.tar.gz
<NO ERROR>

Regression potential
====================

This changes the default representation of files with exactly 100
characters, so any programs which rely on this will need to ensure the
environment variable is set to continue functioning correctly. However,
it would be very rare for a program to rely on this (pristine-tar is
probably about the only example). Other than this, all compatibility
with previous versions should be retained (Natty has also made this
change, so we would expect to see breakage there too if there is any).

** Affects: tar (Ubuntu)
     Importance: Undecided
         Status: Confirmed

-- 
Natty and Maverick's tar versions generate different tarballs in some cases (when link is 100 characters)
https://bugs.launchpad.net/bugs/696480
You received this bug notification because you are a member of Ubuntu Sponsors Team, which is a direct subscriber.



More information about the Ubuntu-sponsors mailing list