Job Management Partner 1/Automatic Job Management System 3 Configuration Guide 1

[Contents][Glossary][Index][Back][Next]


14.2.17 Applying SIG_DFL (setting for receiving the SIGCHLD signal) to a child process started from JP1/AJS3

The explanation in this subsection applies to a UNIX environment in which a UNIX or action job that is not a JP1/AJS3 queueless job is executed. In this state, depending on the login shell used by the job execution OS user, the status of the job might change to Failed to start or Ended abnormally. Alternatively, the job might end with an unexpected result. This occurs because child processes started from JP1/AJS3 are based on SIG_IGN, which is the setting that ignores the SIGCHLD signal. For details about child-process signals set by JP1/AJS3, see (3) Child-process signals set by JP1/AJS3.

Cautionary notes:
  1. If JP1/AJS2 08-00 or a later version or JP1/AJS3 is installed as a new installation, SIG_DFL, which is the setting for receiving the SIGCHLD signal, is applied. In this case, the settings described in this subsection need not be specified.
  2. If JP1/AJS2 08-00 or a later version or JP1/AJS3 is installed as an upgrade from JP1/AJS2 07-50 or an earlier version, the previous settings are inherited. In this case, the settings described in this subsection must be specified.

The following describes how to apply SIG_DFL, which is the setting for receiving the SIGCHLD signal, to the type of job described above.

Note that if you use the queueless job execution functionality, you do not need to specify the settings described in this subsection. For any child process started from the queueless agent service when a queueless job is executed, SIG_DFL, which is the setting for receiving the SIGCHLD signal, is applied.

Organization of this subsection
(1) Setting method 1
(2) Setting method 2
(3) Child-process signals set by JP1/AJS3

(1) Setting method 1

If an application that might cause the problem described above is started from JP1/AJS3, use sh, csh, or ksh as the login shell for the job execution OS user. Alternatively, start the application via the shell.

(2) Setting method 2

(a) Definition procedure

  1. Stop the JP1/AJS3 service.
    Execute the following commands to confirm that all processes have stopped:
     
    # /etc/opt/jp1ajs2/jajs_stop#1
    # /opt/jp1ajs2/bin/jajs_spmd_status
     

    #1:
    Confirm that automatic termination has been set.
  2. Execute the following command to set the environment setting parameter described in (2) below:
     
    jajs_config -k definition-key "parameter-name"=value
     
  3. Restart JP1/AJS3.
    The new settings are applied.

Cautionary note:
If you apply SIG_DFL, which is the setting for receiving the SIGCHLD signal, you must use the above procedure on the job execution host.

(b) Environment setting parameter

Table 14-25 Environment setting parameter used to apply SIG_DFL to child processes started from JP1/AJS3

Definition key Environment setting parameter Explanation
[{JP1_DEFAULT|logical-host}\JP1NBQAGENT\Job]# "IsSigchldDefault"= Specifies whether to apply SIG_DFL, which is the setting for receiving the SIGCHLD signal, to child processes started from JP1/AJS3.

#:
The specification of the {JP1_DEFAULT|logical-host} part depends on whether the host is a physical host or a logical host. For a physical host, specify JP1_DEFAULT. For a logical host, specify the logical host name.

For details about the definition of this environment setting parameter, see 2.3(63) IsSigchldDefault in the Job Management Partner 1/Automatic Job Management System 3 Configuration Guide 2.

(3) Child-process signals set by JP1/AJS3

Table 14-26 Child-process signals set by JP1/AJS3

Signal name Initial setting Behavior
SIGHUP SIG_DFL (default) A
SIGINT SIG_DFL (default) A
SIGQUIT SIG_DFL (default) A
SIGILL SIG_DFL (default) A
SIGTRAP SIG_DFL (default) C, G
SIGIOT SIG_DFL (default) C, G
SIGEMT SIG_DFL (default) G
SIGFPE SIG_DFL (default) C
SIGBUS SIG_DFL (default) A, G
SIGSEGV SIG_DFL (default) C
SIGSYS SIG_DFL (default) G
SIGPIPE SIG_DFL (default) A
SIGALRM SIG_DFL (default) A
SIGTERM SIG_DFL (default) A
SIGUSR1 SIG_DFL (default) A
SIGUSR2 SIG_DFL (default) A
SIGCHLD SIG_DFL (default)#1 B
SIG_IGN (ignore)#2 H
SIGPWR SIG_DFL (default) A, G
SIGVTALRM SIG_DFL (default) A, G
SIGPROF SIG_DFL (default) A, G
SIGIO SIG_DFL (default) A, G
SIGWINCH SIG_DFL (default) B, G
SIGTSTP SIG_DFL (default) D
SIGCONT SIG_DFL (default) I
SIGTTIN SIG_DFL (default) D
SIGTTOU SIG_DFL (default) D
SIGURG SIG_DFL (default) B, G
SIGLOST SIG_DFL (default) A, G

Legend:
A: The default behavior is to terminate the process.
B: The default behavior is to ignore the signal.
C: The default behavior is to dump core.
D: The default behavior is to stop the process.
E: Signal that cannot be caught
F: Signal that cannot be ignored
G: Signal that does not conform to POSIX.1
H: The signal is ignored.
I: The default behavior is to restart the process.

#1:
If JP1/AJS2 08-00 or a later version or JP1/AJS3 is installed as a new installation, SIG_DFL, which is the setting for receiving the SIGCHLD signal, is applied.

#2:
If JP1/AJS2 08-00 or a later version or JP1/AJS3 is installed as an upgrade from JP1/AJS2 07-50 or an earlier version, SIG_IGN, which is the setting for ignoring the SIGCHLD signal, is applied.

[Contents][Back][Next]


[Trademarks]

Copyright (C) 2009, 2010, Hitachi, Ltd.
Copyright (C) 2009, 2010, Hitachi Solutions, Ltd.