[GE users] No job status, but process still runs

Kenneth Yoshimoto kenneth at sdsc.edu
Tue Jul 10 19:35:32 BST 2007


    [ The following text is in the "X-UNKNOWN" character set. ]
    [ Your display is set for the "ISO-8859-10" character set.  ]
    [ Some characters may be displayed incorrectly. ]


  I was looking at this a long while back.  I thought that
GridEngine used session id to track processes of a job.
It was possible to escape this with setsid().  So, if
the user or application really wants to, they can escape
GridEngine job control.  (I don't know if there is a way
to enforce this with a vanilla kernel.  There are process
tracking patches that allow tracking by jobid.  Don't know
if GridEngine can be configured to use these attributes.)
You could look through the GridEngine code to see how it's
tracking processes.

Kenneth

On Mon, 9 Jul 2007, Olesen, Mark wrote:

> Date: Mon, 9 Jul 2007 21:19:29 +0200 
> From: "Olesen, Mark" <Mark.Olesen at emcontechnologies.com>
> Reply-To: users at gridengine.sunsource.net
> To: "'users at gridengine.sunsource.net'" <users at gridengine.sunsource.net>
> Subject: RE: [GE users] No job status, but process still runs
> 
>> I tried using the bash wait command but it's not capturing the PID. I
>> also tried using fghack to no avail.
>>
>> Are there any resources I can look up on how to set up my wrapper
>> script?
>
> The preferred choice would be to get the software vendor to give you
> information about how avoid forking or else implement this functionality
> very soon.
>
> The only other possibility is brute force.
> By inspection, try to see what PID/PGRP type of rules seem to be followed
> when you start the process by hand (w/o GridEngine).
> If there is just one of these jobs per machine/user, you could simply grep
> the ps table for the appropriate PID.
>
> If the shell wait on pid gives you problems, you could also try a simple
> Perl script with sleeping, querying the PID, etc.
>
>> From perlfunc
>    kill SIGNAL, LIST
>    ...
>    If SIGNAL is zero, no signal is sent to the process. This is a
>    useful way to check that a child process is alive and hasn't
>    changed its UID. See perlport for notes on the portability of
>    this construct.
>
>
> BTW: if you don't like having a separate Perl script, you can also use 'perl
> -x' to embedded backing it into your shell script - see perlrun(1) for
> details.
>
> good luck!
>
> /mark
> This e-mail message and any attachments may contain legally privileged, confidential or proprietary Information, or information otherwise protected by law of EMCON Technologies, its affiliates, or third parties. This notice serves as marking of its ?Confidential? status as defined in any confidentiality agreements concerning the sender and recipient. If you are not the intended recipient(s), or the employee or agent responsible for delivery of this message to the intended recipient(s), you are hereby notified that any dissemination, distribution or copying of this e-mail message is strictly prohibited. If you have received this message in error, please immediately notify the sender and delete this e-mail message from your computer.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe at gridengine.sunsource.net
> For additional commands, e-mail: users-help at gridengine.sunsource.net
>


    [ Part 2: "Attached Text" ]

    [ The following text is in the "iso-8859-1" character set. ]
    [ Your display is set for the "ISO-8859-10" character set.  ]
    [ Some special characters may be displayed incorrectly. ]

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe at gridengine.sunsource.net
For additional commands, e-mail: users-help at gridengine.sunsource.net



More information about the gridengine-users mailing list