some imports survive a kill -SIGTERM leading to massive log output and no kill

Bug #735477 reported by Vincent Ladeuil on 2011-03-15
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Ubuntu Distributed Development
High
Vincent Ladeuil

Bug Description

Now that we have a time quota check, we try to kill the imports that exceed their quota.

It turns out nexuiz-data couldn't be killed and we kept trying.

I couldn't kill the import either with -15 (SIGTERM hoping to get a traceback) so I had to -9 (SIGKILL) it manually.

The mass_import script should probably do the same.

I don't have a good answer for the failure recording in that case since the process won't produce a meaning full output so we probably should rely on log analysis there.

Related branches

Vincent Ladeuil (vila) on 2011-03-15
Changed in udd:
status: New → Confirmed
importance: Undecided → High

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 3/15/2011 2:50 PM, Vincent Ladeuil wrote:
> Public bug reported:
>
> Now that we have a time quota check, we try to kill the imports that
> exceed their quota.
>
> It turns out nexuiz-data couldn't be killed and we kept trying.
>
> I couldn't kill the import either with -15 (SIGTERM hoping to get a
> traceback) so I had to -9 (SIGKILL) it manually.
>
> The mass_import script should probably do the same.
>
> I don't have a good answer for the failure recording in that case since
> the process won't produce a meaning full output so we probably should
> rely on log analysis there.

If it is in swap death, or dying inside a C function, then SIGTERM and
SIGINT won't work (AIUI). If we know what function it was dying in (and
it is one of ours), we could add a call to the Python "check if there
are pending signals" function. With some tricks to watch out for GIL issues.

John
=:->

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAk1/fqUACgkQJdeBCYSNAANzOgCfeCwCg6gwYIQfoDC4uTIVn+t4
YpgAn35QdL1wwtztUFFHzhov4y4kAyIZ
=6gUI
-----END PGP SIGNATURE-----

Martin Pool (mbp) wrote :

If it is in a C function SIGKILL should definitely still kill it, and
SIGTERM probably should.

kill -9 will fail only if it's inside a syscall or if there is a
kernel bug. If that happens it's good to run 'ps l PID' (lowercase l)
to see which syscall it's in.

Martin

Vincent Ladeuil (vila) wrote :

Neither SIGINT nor SIGTERM was enough to kill the process all times I tried (3 so far ;), SIGKILL was.

I'll put a fix for review RSN.

Changed in udd:
status: Confirmed → In Progress
assignee: nobody → Vincent Ladeuil (vila)
Vincent Ladeuil (vila) on 2011-03-21
Changed in udd:
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers