amd64-only test running on i386

Bug #1848237 reported by Andreas Hasenack
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
python-pyeclib (Ubuntu)
Fix Released
Undecided
Unassigned
six (Ubuntu)
Invalid
Undecided
Unassigned

Bug Description

Some tests in d/t/control are not meant to be run on non-amd64 architectures. The test script tries to detect this and skip them:
arch = platform.machine()
if sys.argv[1].startswith('isa_') and arch == 'x86_64':
    print("Skipping {} test for {} architecture".format(sys.argv[1], arch))
else:
...

In eoan, at some point during the development cycle, the VM running i386 tests is actually on an amd64 kernel:
"""
...
-name adt-eoan-i386-python-pyeclib-20191014-091043 --image adt/ubuntu-eoan-i386-server
...
Get:5 http://ftpmaster.internal/ubuntu eoan-proposed/universe Sources [127 kB]
Get:6 http://ftpmaster.internal/ubuntu eoan-proposed/main amd64 Packages [18.0 kB]
Get:7 http://ftpmaster.internal/ubuntu eoan-proposed/main i386 Packages [12.9 kB]
...
linux-generic:amd64 is already the newest version (5.3.0.18.21).
...
utopkgtest [09:11:51]: testbed running kernel: Linux 5.3.0-18-generic #19-Ubuntu SMP Tue Oct 8 20:14:06 UTC 2019
autopkgtest [09:11:51]: testbed dpkg architecture: i386
"""

In such an environment, platform.machine() will return "x86_64", and the test will be run, but fail:
autopkgtest [09:22:26]: test command7: python debian/tests/encode-decode.py isa_l_rs_vand
autopkgtest [09:22:26]: test command7: [-----------------------
Traceback (most recent call last):
  File "debian/tests/encode-decode.py", line 15, in <module>
    ec = ECDriver(k=3, m=3, hd=3, ec_type=sys.argv[1])
  File "/usr/lib/python2.7/dist-packages/pyeclib/ec_iface.py", line 212, in __init__
    validate=int(self.validate)
  File "/usr/lib/python2.7/dist-packages/pyeclib/utils.py", line 73, in create_instance
    instance = object_class(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/pyeclib/core.py", line 61, in __init__
    validate)
pyeclib.ec_iface.ECBackendInstanceNotAvailable: pyeclib_c_init ERROR: Backend instance not found. Please inspect syslog for liberasurecode error report.
init: autopkgtest [09:22:26]: test command7: -----------------------]

It's probably best to use "dpkg --architecture" for this check.

Revision history for this message
Andreas Hasenack (ahasenack) wrote :

Added six to the list of affected packages so that this bug will show up in the excuses report as to why six isn't migrating.

Revision history for this message
Andreas Hasenack (ahasenack) wrote :
Steve Langasek (vorlon)
Changed in six (Ubuntu):
status: New → Invalid
Revision history for this message
Corey Bryant (corey.bryant) wrote :

Hi Andreas,

We currently have a fix for this going in https://bileto.ubuntu.com/#/ticket/3823
but autopkgtests don't seem to be returning results.

Thanks,
Corey

Revision history for this message
Andreas Hasenack (ahasenack) wrote :

Heh, so do I (ticket 3822), I pinged sil2100 about it and he said he will take a look later.

Revision history for this message
Corey Bryant (corey.bryant) wrote :

I just uploaded it to the Eoan unapproved queue. Apologies for not updating the changelog with the bug, but I think we can just manually track it via this bug. Sahid had run autopkgtests successfully but seeing as it's release week I wanted to be safe and land it via bileto but I've given up on that. Anyway it is fixed in python-pyeclib 1.5.0-1ubuntu6.

Revision history for this message
James Page (james-page) wrote :

Fixed generally in 1.6.0-5

Changed in python-pyeclib (Ubuntu):
status: New → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.