22.04: FTBFS due to test failure

Bug #1961425 reported by Frédéric Bonnard
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
The Ubuntu-power-systems project
Fix Released
Undecided
Unassigned
capnproto (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

Hi,
capnproto 0.8.0-2ubuntu1 fails on ppc64el :
https://launchpad.net/ubuntu/+source/capnproto/0.8.0-2ubuntu1/+build/23090234/+files/buildlog_ubuntu-jammy-ppc64el.capnproto_0.8.0-2ubuntu1_BUILDING.txt.gz

Lowering optimization (O3->O2) level makes the failing test pass, for
instance adding

export DEB_CXXFLAGS_MAINT_APPEND=-O1
export DEB_CXXFLAGS_MAINT_STRIP=-O3

in debian/rules.

For the time being that can be the way to go as 0.9.1-2 from Debian Experimental
builds fine on Jammy by default with O3.

F.

Tags: fr-2080
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in capnproto (Ubuntu):
status: New → Confirmed
Revision history for this message
Alexandre Erwin Ittner (aittner) wrote :

I was looking into this for a few days and failure:

[ TEST ] kj/string-test.c++:31: legacy test: String/Str
kj/string-test.c++:38: failed: expected ("-128 -32768 -2147483648 -9223372036854775808") == (str((signed char)-128, ' ', (signed short)-32768, ' ', ((int)-2147483647) - 1, ' ', ((long long)-9223372036854775807ll) - 1)); -128 -32768 -2147483648 -9223372036854775808; str((signed char)-128, ' ', (signed short)-32768, ' ', ((int)-2147483647) - 1, ' ', ((long long)-9223372036854775807ll) - 1) = -128 -32768 -214748364( -9223372036854775808
stack: c27f3c60b7b c27f38280d7 764d217568b3 764d216c058f 764d217549e3 764d2175661f 764d216ef643 764d21701a83 764d216c058f 764d216f568b 764d2175314f 764d211017a3 764d21101987
[ FAIL ] kj/string-test.c++:31: legacy test: String/Str (85 μs)

... is caused by the code depending on undefined behavior, which happens to pass on x64 and arm64 but fails on ppc64el. Reducing optimization level works but I won't count on it to be stable. But since the problem is already fixed in 0.9.0 (currently on experimental), we can get the fix when that version is merged.

There are also a different FTBFS caused by a few test cases that fail when the unit tests are ran from a ZFS volume. I only hit it after building on a container backed by ZFS storage, btw. It's caused by a capnproto component using its own wrapper for system call renameat2() without implementing the fallback for it on unsupported filesystems (as renameat2 requires collaboration from the FS layer). It is also fixed in version 0.9.0.

If 0.9.0 does not arrive in time for the merge freeze, I tentatively backported these two fixes to 0.8.0. A test branch in https://code.launchpad.net/~aittner/ubuntu/+source/capnproto/+git/capnproto/+ref/backport-upstream-fixes

tags: added: fr-2080
Revision history for this message
Alexandre Erwin Ittner (aittner) wrote :

Just noticed that version 0.8.0-2ubuntu2 ( https://launchpad.net/ubuntu/+source/capnproto/0.8.0-2ubuntu2 ) landed at the start of the month. This version has a patch that fixes the string issue; renameat2 issue remains, but it won't trigger unless building (and running the unit tests) from a ZFS volume.

Revision history for this message
Andrew Cloke (andrew-cloke) wrote :

As 0.8.0-2ubuntu2 has fixed the build issue, marking this bug as "Fix Released".
Please feel free to revert if the issue is persisting.

Changed in capnproto (Ubuntu):
status: Confirmed → Fix Released
Changed in ubuntu-power-systems:
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.