python-ruffus kills LXC worker on ppc64el

Bug #1488879 reported by Martin Pitt
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Auto Package Testing
Fix Released
High
Martin Pitt
autopkgtest (Ubuntu)
Fix Released
High
Martin Pitt

Bug Description

python-ruffus' tests create some kind of python fork bomb in ppc64el's LXC worker, which triggers the OOM killer.

We need to find a way for the spawned LXC container to be the first OOM victim, instead of killing the worker python process.

Related branches

Martin Pitt (pitti)
Changed in auto-package-testing:
importance: Undecided → High
status: New → In Progress
assignee: nobody → Martin Pitt (pitti)
Martin Pitt (pitti)
Changed in autopkgtest (Ubuntu):
status: New → In Progress
importance: Undecided → High
assignee: nobody → Martin Pitt (pitti)
Martin Pitt (pitti)
no longer affects: autopkgtest (Ubuntu)
Changed in autopkgtest (Ubuntu):
status: New → In Progress
importance: Undecided → High
assignee: nobody → Martin Pitt (pitti)
Revision history for this message
Martin Pitt (pitti) wrote :

Setting "lxc.cgroup.memory.limit_in_bytes = 1800M" in /usr/share/lxc/config/ubuntu.common.conf does the trick for not killing host processes. I. e. leave enough room for two parallel testbeds plus some for the host OS.

After that, adt-run still fails to properly kill the container and clean up.

Revision history for this message
Martin Pitt (pitti) wrote :
Changed in autopkgtest (Ubuntu):
assignee: Martin Pitt (pitti) → nobody
status: In Progress → Fix Committed
Revision history for this message
Martin Pitt (pitti) wrote :

Applied LXC cgroup memory limit to all workers.

Changed in auto-package-testing:
status: In Progress → Fix Released
Changed in autopkgtest (Ubuntu):
assignee: nobody → Martin Pitt (pitti)
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package autopkgtest - 3.16.3

---------------
autopkgtest (3.16.3) unstable; urgency=medium

  * adt-setup-vm: Use /etc/cloud.cfg.d/ to avoid conffile prompts on upgrades.
    (LP: #1477626)
  * Don't invoke QEMU with -localtime. QEMU defaults to and Linux prefers the
    hw clock in UTC. This avoids large time jumps when doing NTP.
  * adt-setup-vm: Start autopkgtest shell after all other SysV init
    scripts/facilities, to avoid a too early start of tests while boot is
    still in progress.
  * doc/README.package-tests.rst: Use comma separator in examples.
  * VirtSubproc.check_exec(): Actually error out on stderr as documented.
  * adt-virt-ssh: Verify that sudo does not write errors, as that
    interferes with auxverbs and generally is a sign of host mis-configuration
    (typically wrong hostname).
  * ssh-setup-nova: Set hostname to "adt". This avoids overly long host names
    from defaulting to nova instance names (which can be very long).
  * ssh-setup/nova: Fix parsing of IP address from "nova show" to avoid
    tripping over instance names containing "network". (LP: #1481574)
  * Fix error message and code for "invalid test depends" errors.
  * tests/pep8: Ignore E402 ("module level import not at top of file"), as
    that's impossible to satisfy; we have to set sys.path before.
  * ssh-setup/nova: In cleanup(), wait until the instance gets deleted. This
    avoids name collisions and instance quota overflow.
  * adt-run: Always show summary at the end, which is particularly helpful for
    multiple tests. (LP: #1484991)
  * adt-run.1: Clarify that without any logging options adt-run only logs to
    stderr. (LP: #1485661)
  * adt-virt-lxc: If the executed command exits with 255, translate that to
    253 in the auxverb wrapper, as 255 is the exit code for failures of the
    auxverb itself. This avoids considering ordinary test failures as
    temporary testbed failures.
  * adt-run: Show host name, to more easily identify hosts with frequent
    failures.
  * adt-virt-lxc: Always call lxc-stop with --kill, as the containers are not
    precious and normal shutdown might hang.
  * adt-virt-lxc: In cleanup, stop LXC container before removing the shared
    downtmp, to ensure that we always clean up the running container. Also
    don't fail on errors. (LP: #1488879)
  * ssh-setup/nova: Add missing apt sources for -updates/-security
    restricted/multiverse pockets.

 -- Martin Pitt <email address hidden> Thu, 27 Aug 2015 19:54:51 +0200

Changed in autopkgtest (Ubuntu):
status: Fix Committed → 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.