[Bug 1549942] Re: php-imagick failing autopkgtests
Nish Aravamudan
nish.aravamudan at canonical.com
Mon Mar 7 19:18:25 UTC 2016
On 07.03.2016 [06:38:45 -0000], Steve Langasek wrote:
> On Mon, Mar 07, 2016 at 05:09:06AM -0000, Nish Aravamudan wrote:
> > Note that if I hold php-imagick constant and test against the two version
> > of imagemagick (with and without my fixes), I get different results (while
> > upstream php-imagick against upstream imagemagick does not see any issues)
> > -- that to me indicates the bug is missed fixes in imagemagick.
>
> Not knowing the details of upstream's testing, it could also be that the
> upstream imagemagick build they're testing against doesn't have openmp
> enabled?
I think the upstream maintainer implied it is on, but I'm not 100%. I'll
see if I can see that setting in their CI.
Also, I forgot to mention this earlier, but the segmentation faults I
see are somehow racy -- that is, they don't happen on every execution.
And the upstream maintainer implied to me that this is actually quite
common, it seems like, in the shutdown routines in imagemagick -- and
that a common google-able workaround for Ubuntu is to recompile
imagemagick from source w/o openmp support :( They *are* more
reproducible for me under phpunit (as opposed to `make
tests`/run-tests.php), but still not consistent.
> > Again, I know that seems to be the case, but Debian's results imply
> > something else. Are the launchpad sbuilds multi-cpu?
>
> Yes, they are.
Ok, I wonder why the results are so different in Debian (and for me on
my laptop).
> > Another big difference between the version of php-imagick, ignore
> > functionality, is a huge increase in coverage tests. I belive
> > php-imagick 3.3.0~rc2 only runs 27 tests, while 3.4.0~rc6 runs 251. More
> > on this below.
>
> Right, fair enough!
Yeah, it's a (good, but) large difference in coverage.
> So the new php-imagick upload now passes its testsuite on amd64 and ppc64el,
> but shows failures on i386, armhf and s390x
>
> http://autopkgtest.ubuntu.com/packages/p/php-imagick/xenial/armhf
> http://autopkgtest.ubuntu.com/packages/p/php-imagick/xenial/i386
> http://autopkgtest.ubuntu.com/packages/p/php-imagick/xenial/s390x
>
> Same test failure on i386 and s390x, and only 1 test failure instead of 20+.
> Different failure on armhf (a test timeout - possibly a problem of the
> architecture being slow rather than a bug in the code).
Yeah, I'd think the armhf failure is just an issue with the running time
as opposed to a bug. That time limit is hardcoded in the test -- would
you want me to propose upstream changing that value based upon the
platform? Or just increasing it across the board?
> Is this a new test? Do you believe this test would fail with the previous
> version of php-imagick as well? Should we bypass this test failure for now
> to get php7 migrated?
It is a new test, and is one I fixed in the updated version of
imagemagick. It was an architectural bug in imagemagick, actually --
where i386 had the correct value for rounding, but all other
architectures didn't.
Ah, this actually goes to the heart of the issue I mentioned earlier.
This tests (025-get-color.phpt) tests for different behavior based upon
the imagemagick version. In our case, we are running 0x689 (base
imagemagick version), but actually it's not upstream 0x689, it's 0x689 +
backports, in particular some from 6.9.2 that fix the code being tested
here.
So the test does this check:
if ($v['versionNumber'] >= 0x692) {
//this is the new correct behaviour
return (intval(round($someValue, 0, PHP_ROUND_HALF_UP)));
}
else {
//old behaviour had wrong rounding.
return (intval(round($someValue, 0, PHP_ROUND_HALF_DOWN)));
}
And executes the else-case, but we have the fixes that are in the
if-case.
I'm not sure what to do about this. Technically, we know in this test on
Ubuntu, we should now (on all architectures) be testing the if-case, so
we could carry a patch for the test that removes the conditional?
--
Nishanth Aravamudan
Ubuntu Server
Canonical Ltd
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to imagemagick in Ubuntu.
https://bugs.launchpad.net/bugs/1549942
Title:
php-imagick failing autopkgtests
Status in ImageMagick:
Fix Released
Status in imagemagick package in Ubuntu:
Fix Released
Status in php-imagick package in Ubuntu:
New
Bug description:
8:6.8.9.9-7 has backported
- PixelColor off by one on i386 (closes: #811308)
https://github.com/ImageMagick/ImageMagick/issues/54
but there were two commits that came after the currently backported
changes (d6054824 and 95c8394e). The former, especially, is needed, as
the current backport introducing a rounding bug (incorrect use of
floor()).
To manage notifications about this bug go to:
https://bugs.launchpad.net/imagemagick/+bug/1549942/+subscriptions
More information about the foundations-bugs
mailing list