Opened 17 years ago

Last modified 9 years ago

#84 new enhancement

IZ475: echo "dtterm" |qsub -V -l onlySun=1

Reported by: slmingol Owned by:
Priority: normal Milestone:
Component: sge Version: 5.3
Severity: Keywords: PC execution
Cc:

Description

[Imported from gridengine issuezilla http://gridengine.sunsource.net/issues/show_bug.cgi?id=475]

        Issue #:      475              Platform:     PC            Reporter: slmingol (slmingol)
       Component:     gridengine          OS:        All
     Subcomponent:    execution        Version:      5.3              CC:    None defined
        Status:       NEW              Priority:     P3
      Resolution:                     Issue type:    ENHANCEMENT
                                   Target milestone: ---
      Assigned to:    pollinger (pollinger)
      QA Contact:     pollinger
          URL:
       * Summary:     echo "dtterm" |qsub -V -l onlySun=1
   Status whiteboard:
      Attachments:

     Issue 475 blocks:
   Votes for issue 475:


   Opened: Tue Jan 28 13:37:00 -0700 2003 
------------------------


I've added the onlySun variable to each
Sun/Solaris queue. This is so that we can select
b/w linux and solaris boxes. Anyway when I try to
launch dtterm it works fine, however if I qdel the
job from the queue it gets removed but the
terminal window (dtterm) remains open. This would
appear to be a backdoor that users could exploit
to get a shell on a node in our cluster but have
it not show up to gridware. Has anyone seen this
problem?

   ------- Additional comments from andreas Wed Jan 29 06:01:21 -0700 2003 -------
Evaluation:
I must confirm this behaviour. In the described case the dtterm
process remains running, although the actual job actually finsihes.
The reason for this behaviour is that dtterm opens a new process group
and thus leaves the job's process group which is signalled by
sge_shepherd. It is a known limitation that jobs can escape Grid
Engine control when subprocesses open a new process group. Thus this
issue is considered an enhancement request.

Workaround:
Use qsh instead of running dtterm from within a batch job. In this
case the xterm as well as any other terminal program will be signalled
since it is forked directly from shepherd. Thus the jobs' process
group id and xterm process group id are identical. In this case qdel
works as expected. Note that qsh is suited not only for starting xterm
remotely but any other terminal program.

Suggested Enhancement:
Grid Engine shepherd attaches an additional group id to the job. This
group id could be used to find and signal all processes belonging to a
job. Signalling by means of this additional group id must be an
option, to allow for preventing signalling of processes that actually
don't belong to the job, but nevertheless bind this group id for some
reason.

   ------- Additional comments from pollinger Tue Dec 6 04:33:31 -0700 2005 -------
Reassigned to execution category

Change History (0)

Note: See TracTickets for help on using tickets.