"make check" fails in sbuild chroot

Reported by James Hunt on 2011-11-11
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
upstart
Low
James Hunt
upstart (Ubuntu)
Undecided
Unassigned

Bug Description

As reported to upstart-devel mailing list by broder, "make check" fails in an sbuild chroot:

 test_job_process: tests/test_job_process.c:3726: test_handler:
Assertion `(waitid (P_PID, pid, &info, 2 | 0x01000000)) == 0' failed.
 /bin/bash: line 5: 27647 Aborted (core dumped) ${dir}$tst
 FAIL: test_job_process

Evan also found the cause:

  http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=607844

Upstarts tests should detect and handle this situation by checking ttyname(3) and taking appropriate action. It should also log a warning if action is required.

James Hunt (jamesodhunt) on 2011-12-16
Changed in upstart:
assignee: nobody → James Hunt (jamesodhunt)
Jamie Strandboge (jdstrand) wrote :

I hit this while trying to build upstart locally using the security team's sbuild environment (https://wiki.ubuntu.com/SecurityTeam/BuildEnvironment).

Jamie Strandboge (jdstrand) wrote :

The same test fails, but differently:
BAD: wrong content in file 0x2b3ff38d7910 (output), expected 'stdout^M
' got 'stdout'
       at tests/test_job_process.c:4979 (test_spawn).
/bin/bash: line 5: 26450 Aborted (core dumped) ${dir}$tst
FAIL: test_job_process

Jamie Strandboge (jdstrand) wrote :

For anyone else seeing this, you can disable the checks by using the standard 'DEB_BUILD_OPTIONS=nocheck' environment variable.

Changed in upstart (Ubuntu):
status: New → Confirmed
James Hunt (jamesodhunt) wrote :

This bug has now been fixed but is not yet available in a release.

*Please* do not disable the Upstart tests as they provide valuable assurance that the resulting binary will work as expected on the target system. Instead, use pbuilder(8) until this fix is available in a release.

Changed in upstart:
status: New → Fix Committed
importance: Undecided → Low
Jamie Strandboge (jdstrand) wrote :

The ubuntu security team has standardized on sbuild and all of our tools use it. We do this because we want to closely mimic the official buildds, which use sbuild (though an older one that seemingly has some sort of workaround for upstart).

My workaround wasn't meant to be run unconditionally, but instead to document how one could build a package locally with sbuild after noticing the initial build failed. This is needed for local testing.

Steve Langasek (vorlon) wrote :

This fix is included in upstart 1.6, so marking the upstream task 'fix released'.

James, fwiw it would be helpful if you would use a '--fixes lp:######' argument to your bzr commits; this would make it easier to see at a glance which commit fixes a given bug. (This is also what triggers launchpad's linking of branches to bugs.)

Changed in upstart:
status: Fix Committed → Fix Released
Changed in upstart (Ubuntu):
status: Confirmed → In Progress
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers