PaxHeaders folder is missing upgrade from 1.8.2 to 1.10.9

classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

PaxHeaders folder is missing upgrade from 1.8.2 to 1.10.9

S Abirami
Hi All,

In our build.xml, we are using the untar task to untar gzip and tar.gz file.
When we tar, always we saw a PaxHeaders.* folder in the untar location.
After upgrading from 1.8.2 to 1.10.9 version of Ant build.

We are not seeing this folder. We want to know whether missing of that folder will have any impact on the untar files.

Please help us here to understand the impact of it.

Note: I have noticed in  release not of 1.9.4 to 1.9.5 there is some changes in paxheader but not sure about the fix.

Regards,
Abirami.S

Reply | Threaded
Open this post in threaded view
|

Re: PaxHeaders folder is missing upgrade from 1.8.2 to 1.10.9

Stefan Bodewig
On 2021-01-28, S Abirami wrote:

> In our build.xml, we are using the untar task to untar gzip and tar.gz file.
> When we tar, always we saw a PaxHeaders.* folder in the untar location.
> After upgrading from 1.8.2 to 1.10.9 version of Ant build.

> We are not seeing this folder. We want to know whether missing of that
> folder will have any impact on the untar files.

1.8.2 is a looong time ago and a lot has changed. :-)

When tar became a POSIX standard a few ways to break out of the limits
of the original format have been been invented. One of them was the
introduction of an additional type of entry - a so called PAX header -
that could contain (meta-)data not compatible with the original
format. A common example would be non-ASCII filenames or paths longer
than 250 characters.

A tar implementation that doesn't understand these extensions will see
them as files inside a directory called PaXHeaders - an tar
implementation that does understand them will parse them and not treat
the headers as actual files at all.

The Java classes implementing tar initially didn't understand the POSIX
extensions and have ben gradually improved. Looking through Ant's
changelogs I believe with 1.9.0 they started to understand PAX headers.

So what your untar task does now is actually applying the data contained
inside the PAX headers where possible instead of ignoring them.

Stefan

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

RE: PaxHeaders folder is missing upgrade from 1.8.2 to 1.10.9

S Abirami
Hi Stefan,

Our untar task will just untar *.so file and  *.dll file inside gzip and tar.gz.
We didn't store anything inside a PaxHeader folder.

I aware the usage of PaxHeader to determine the higher size of file names available in tar. In our application, we don't have big file name which has more than 100 characters.
Just to confirm the PaxHeader missing is expected in Ant build of 1.10.9 version or we are missing anything.

Regards,
Abirami.S
-----Original Message-----
From: Stefan Bodewig <[hidden email]>
Sent: Friday, January 29, 2021 1:40 PM
To: [hidden email]
Subject: Re: PaxHeaders folder is missing upgrade from 1.8.2 to 1.10.9

On 2021-01-28, S Abirami wrote:

> In our build.xml, we are using the untar task to untar gzip and tar.gz file.
> When we tar, always we saw a PaxHeaders.* folder in the untar location.
> After upgrading from 1.8.2 to 1.10.9 version of Ant build.

> We are not seeing this folder. We want to know whether missing of that
> folder will have any impact on the untar files.

1.8.2 is a looong time ago and a lot has changed. :-)

When tar became a POSIX standard a few ways to break out of the limits of the original format have been been invented. One of them was the introduction of an additional type of entry - a so called PAX header - that could contain (meta-)data not compatible with the original format. A common example would be non-ASCII filenames or paths longer than 250 characters.

A tar implementation that doesn't understand these extensions will see them as files inside a directory called PaXHeaders - an tar implementation that does understand them will parse them and not treat the headers as actual files at all.

The Java classes implementing tar initially didn't understand the POSIX extensions and have ben gradually improved. Looking through Ant's changelogs I believe with 1.9.0 they started to understand PAX headers.

So what your untar task does now is actually applying the data contained inside the PAX headers where possible instead of ignoring them.

Stefan

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email] For additional commands, e-mail: [hidden email]


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

AW: PaxHeaders folder is missing upgrade from 1.8.2 to 1.10.9

Jan Matèrne (jhm)
If I understand Stefan right - thank's for that history lesson ;-) - you
don't store anything in /PaXHeaders.
You just store an 'illegal' file, e.g. with a file path longer than 250
characters.

Then your "newer" untar tool will work as usual and just extracts these
long-path-files.
An "older" untar tool can't interpret the content of the tar in the "newer"
way.

Jan

-----Ursprüngliche Nachricht-----
Von: S Abirami <[hidden email]>
Gesendet: Freitag, 29. Januar 2021 09:52
An: Ant Developers List <[hidden email]>
Betreff: RE: PaxHeaders folder is missing upgrade from 1.8.2 to 1.10.9

Hi Stefan,

Our untar task will just untar *.so file and  *.dll file inside gzip and
tar.gz.
We didn't store anything inside a PaxHeader folder.

I aware the usage of PaxHeader to determine the higher size of file names
available in tar. In our application, we don't have big file name which has
more than 100 characters.
Just to confirm the PaxHeader missing is expected in Ant build of 1.10.9
version or we are missing anything.

Regards,
Abirami.S
-----Original Message-----
From: Stefan Bodewig <[hidden email]>
Sent: Friday, January 29, 2021 1:40 PM
To: [hidden email]
Subject: Re: PaxHeaders folder is missing upgrade from 1.8.2 to 1.10.9

On 2021-01-28, S Abirami wrote:

> In our build.xml, we are using the untar task to untar gzip and tar.gz
file.
> When we tar, always we saw a PaxHeaders.* folder in the untar location.
> After upgrading from 1.8.2 to 1.10.9 version of Ant build.

> We are not seeing this folder. We want to know whether missing of that
> folder will have any impact on the untar files.

1.8.2 is a looong time ago and a lot has changed. :-)

When tar became a POSIX standard a few ways to break out of the limits of
the original format have been been invented. One of them was the
introduction of an additional type of entry - a so called PAX header - that
could contain (meta-)data not compatible with the original format. A common
example would be non-ASCII filenames or paths longer than 250 characters.

A tar implementation that doesn't understand these extensions will see them
as files inside a directory called PaXHeaders - an tar implementation that
does understand them will parse them and not treat the headers as actual
files at all.

The Java classes implementing tar initially didn't understand the POSIX
extensions and have ben gradually improved. Looking through Ant's changelogs
I believe with 1.9.0 they started to understand PAX headers.

So what your untar task does now is actually applying the data contained
inside the PAX headers where possible instead of ignoring them.

Stefan

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email] For additional
commands, e-mail: [hidden email]


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email] For additional
commands, e-mail: [hidden email]



---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: PaxHeaders folder is missing upgrade from 1.8.2 to 1.10.9

Stefan Bodewig
In reply to this post by S Abirami
On 2021-01-29, S Abirami wrote:

> Our untar task will just untar *.so file and  *.dll file inside gzip and tar.gz.
> We didn't store anything inside a PaxHeader folder.

The tool you used to create the tar archive stored "something". Some tar
tools create PAX headers even if they are technically not required.

> Just to confirm the PaxHeader missing is expected in Ant build of
> 1.10.9 version or we are missing anything.

That you've seen PaxHeaders folders in 1.8.2 is an artifact to Ant not
understanding PAX Headers. Now it does and it knows these are no real
files.

You still get the contents the creating archiver has put into the tar -
you no longer get additional files that have never been part of the tar
in the first place.

Stefan

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

RE: PaxHeaders folder is missing upgrade from 1.8.2 to 1.10.9

S Abirami
Hi Stefan,

We have the same tar executed in Ant 1.8.2 and Ant1.10.9 build.
We are seeing the difference of PaxHeader folder missing in latest Ant build.
Hence, thought to discuss about the change.

Additionally, In release not 1.9.4 to 1.9.5 there is some description about PaxHeader but no bug id ismentioned.
Hence, thought to understand the behaviour change in the build.

Regards,
Abirami.S

-----Original Message-----
From: Stefan Bodewig <[hidden email]>
Sent: Friday, January 29, 2021 7:35 PM
To: [hidden email]
Subject: Re: PaxHeaders folder is missing upgrade from 1.8.2 to 1.10.9

On 2021-01-29, S Abirami wrote:

> Our untar task will just untar *.so file and  *.dll file inside gzip and tar.gz.
> We didn't store anything inside a PaxHeader folder.

The tool you used to create the tar archive stored "something". Some tar tools create PAX headers even if they are technically not required.

> Just to confirm the PaxHeader missing is expected in Ant build of
> 1.10.9 version or we are missing anything.

That you've seen PaxHeaders folders in 1.8.2 is an artifact to Ant not understanding PAX Headers. Now it does and it knows these are no real files.

You still get the contents the creating archiver has put into the tar - you no longer get additional files that have never been part of the tar in the first place.

Stefan

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email] For additional commands, e-mail: [hidden email]


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: PaxHeaders folder is missing upgrade from 1.8.2 to 1.10.9

Stefan Bodewig
On 2021-01-29, S Abirami wrote:

> We have the same tar executed in Ant 1.8.2 and Ant1.10.9 build.
> We are seeing the difference of PaxHeader folder missing in latest Ant build.
> Hence, thought to discuss about the change.

I'm afraid we are talking past each other.

I've understood your question as such:

1. you've got a tar archive created outside of Ant that you
2. extract using Ant's <untar> task
3. using 1.8.2 this resulted in addtional PaxHeaders.* folders you never
   really used
4. the additional folders are no longer there when you use Ant 1.10.9
5. you ask, whether this means something is missing now

If anything of this is wrong, please correct me. Otherwise I obviously
didn't understand what you are asking.

My answer to the above question is that the tool used in step 1 added
PAX headers that Ant 1.8.2 didn't understand and falsely considered
assumed them to be files. Ant 1.10.9 understands PAX headers so the
additional files are no longer there. The files you really use should be
exactly the same as they used to be with 1.8.2 (as you can verify by
comparing them bit by bit).

> Additionally, In release not 1.9.4 to 1.9.5 there is some description
> about PaxHeader but no bug id ismentioned.

The more important hint is in the release notes of 1.9.0

 * <tar> now supports a new "posix" option for longfile-mode which
   will make it create PAX extension headers for long file names.  PAX
   extension headers are supported by all modern implementations of
   tar including GNU tar.

The reason neither this nor the bugfix in 1.9.5 contain bug IDs is they
simply have never been reported as bugs in Ant. Ant's tar package has
been the nucleus for the tar package of Apache Commons Compress and the
PAX header related changes have been "backports" of changes made in
Commons Compress.

Stefan

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

RE: PaxHeaders folder is missing upgrade from 1.8.2 to 1.10.9

S Abirami
Thanks Stefan for clear explanation.

-----Original Message-----
From: Stefan Bodewig <[hidden email]>
Sent: Saturday, January 30, 2021 7:43 PM
To: [hidden email]
Subject: Re: PaxHeaders folder is missing upgrade from 1.8.2 to 1.10.9

On 2021-01-29, S Abirami wrote:

> We have the same tar executed in Ant 1.8.2 and Ant1.10.9 build.
> We are seeing the difference of PaxHeader folder missing in latest Ant build.
> Hence, thought to discuss about the change.

I'm afraid we are talking past each other.

I've understood your question as such:

1. you've got a tar archive created outside of Ant that you 2. extract using Ant's <untar> task 3. using 1.8.2 this resulted in addtional PaxHeaders.* folders you never
   really used
4. the additional folders are no longer there when you use Ant 1.10.9 5. you ask, whether this means something is missing now

If anything of this is wrong, please correct me. Otherwise I obviously didn't understand what you are asking.

My answer to the above question is that the tool used in step 1 added PAX headers that Ant 1.8.2 didn't understand and falsely considered assumed them to be files. Ant 1.10.9 understands PAX headers so the additional files are no longer there. The files you really use should be exactly the same as they used to be with 1.8.2 (as you can verify by comparing them bit by bit).

> Additionally, In release not 1.9.4 to 1.9.5 there is some description
> about PaxHeader but no bug id ismentioned.

The more important hint is in the release notes of 1.9.0

 * <tar> now supports a new "posix" option for longfile-mode which
   will make it create PAX extension headers for long file names.  PAX
   extension headers are supported by all modern implementations of
   tar including GNU tar.

The reason neither this nor the bugfix in 1.9.5 contain bug IDs is they simply have never been reported as bugs in Ant. Ant's tar package has been the nucleus for the tar package of Apache Commons Compress and the PAX header related changes have been "backports" of changes made in Commons Compress.

Stefan

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email] For additional commands, e-mail: [hidden email]


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]