Opened 12 years ago

Last modified 11 years ago

#686 new enhancement

IZ3061: improve Ctrl-Z handling in builtin interactive jobs with "-pty yes" option set

Reported by: pollinger Owned by:
Priority: high Milestone:
Component: sge Version: 6.2
Severity: Keywords: clients


[Imported from gridengine issuezilla]

        Issue #:      3061             Platform:     All           Reporter: pollinger (pollinger)
       Component:     gridengine          OS:        All
     Subcomponent:    clients          Version:      6.2              CC:    None defined
        Status:       STARTED          Priority:     P2
      Resolution:                     Issue type:    ENHANCEMENT
                                   Target milestone: ---
      Assigned to:    shaas (shaas)
      QA Contact:     roland
       * Summary:     improve Ctrl-Z handling in builtin interactive jobs with "-pty yes" option set
   Status whiteboard:

     Issue 3061 blocks:
   Votes for issue 3061:

   Opened: Wed Jun 17 09:58:00 -0700 2009 

Pressing Ctrl-Z in an interactive job with "-pty yes" option set causes a behaviour that is obvious from a technical point of view, but is
not intuitive for the user.

If the user submits
# qrsh -pty yes sleep 3600
and presses Ctrl-Z, the '^Z' character is not interpreted locally, it is sent to the remote host where the pty interprets it and sends a
SIGTSTP signal to the "sleep" command. Because the "sleep" command was started in a shell in command mode ("/bin/sh -c sleep 3600"), this
remote shell doesn't provide a prompt. Therefore it's not possible to pull the "sleep" command back in the foreground. Of course the local
shell doesn't provide a prompt, too, because here is still the "qrsh" command running.

This leaves the user with a local terminal window that seems to accept no input anymore and a remote shell and command that are suspended
and will never finish.

   ------- Additional comments from crei Thu Aug 13 09:34:38 -0700 2009 -------
Setting Priority to P2

   ------- Additional comments from shaas Fri Jan 15 02:07:34 -0700 2010 -------
I'll fix it.

   ------- Additional comments from shaas Fri Jan 15 02:09:45 -0700 2010 -------
Like the ssh, the "qrsh" client could provide a special escape character that tells it that a following control character should not be sent
to the remote host, but should be interpreted by the local "qrsh" client. ssh defines e.g.:
~^Z - Suspend the local client

Change History (0)

Note: See TracTickets for help on using tickets.