[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: xz 5.0.3 (i386/NetBSD 5.0) strange "Unexpected end of input"
| On Wed, Jun 27, 2012 at 12:54:41AM +0200, Joerg Sonnenberger wrote:
| > If I may guess, you are hitting no corruption, just an optimisation.
The first half of that I had already concluded, when it gave different
results on different runs - it is clearly some kind of race condition.
| > pkg_info just reads enough from the package to get the meta data.
That makes sense.
| > When libarchive is *not* built against liblzma,
That's my case I believe, as it does seem to be running unxz.
| > Depending on how fast the extraction happens,
That could be the race, it did seem as if this problem never happened
if I checked just enough files that all the data could be living in the
buffer cache (or UBC or whatever) - that is, after the first run to
prime the cache. With all 11000 files, that would never happen
(on my system anyway) of course.
| > unxz hits the closed stdout or closed stdin first.
I took a quick look at the code, and this error looks mostly related to
the input buffer, so a closed stdin would seem more likely the cause
(closed stdout might produce some different error).
| > I'm not aware of a clean way to signal this.
Given that, ...
Date: Wed, 27 Jun 2012 01:45:26 +0000
From: David Holland <dholland-pkgtech%NetBSD.org@localhost>
| Um? Close its stdin, wait for it, then close its stdout?
this doesn't look like a productive strategy, but ...
| Or signal it and not close either?
seems reasonable, simply kill -9 the thing (kill(pid,SIGKILL)),
and ignore a signal 9 exit status (don't treat that as an error - or
at least, not an error if libarchive has sent the signal). If
you have all the data you want already, that's surely harmless.
In any case, now that I am convinced that this is puerly a cosmetic
issue, I'll continue with what I was doing, assuming that pkg_info
was truly getting everything it wanted (I was guessing that to be
true before, now I'm elevating the hypothesis to be a theory...)
I'll just ignore the error messagess, and assume that someone who
understands what is probably happening will eventually fix it (I'm
quite willing to test proposed fixes of course, I seem easily able
to generate the problem.)
Main Index |
Thread Index |