QALTER(1)                  POSIX Programmer's Manual                 QALTER(1)



PROLOG
       This manual page is part of the POSIX Programmer's Manual.  The OS
       implementation of this interface may differ (consult the corresponding
       OS manual page for details of OS behavior), or the interface may not be
       implemented on OS.

NAME
       qalter -- alter batch job

SYNOPSIS
       qalter [[-a date__time]] [[-A account__string]] [[-c interval]] [[-e path__name]]
           [[-h hold__list]] [[-j join__list]] [[-k keep__list]] [[-l resource__list]]
           [[-m mail__options]] [[-M mail__list]] [[-N name]] [[-o path__name]]
           [[-p priority]] [[-r _y|_n]] [[-S path__name__list]] [[-u user__list]]
           job__identifier...

DESCRIPTION
       The attributes of a batch job are altered by a request to the batch
       server that manages the batch job. The qalter utility is a user-
       accessible batch client that requests the alteration of the attributes
       of one or more batch jobs.

       The qalter utility shall alter the attributes of those batch jobs, and
       only those batch jobs, for which a batch job__identifier is presented to
       the utility.

       The qalter utility shall alter the attributes of batch jobs in the
       order in which the batch job__identifiers are presented to the utility.

       If the qalter utility fails to process a batch job__identifier
       successfully, the utility shall proceed to process the remaining batch
       job__identifiers, if any.

       For each batch job__identifier for which the qalter utility succeeds,
       each attribute of the identified batch job shall be altered as
       indicated by all the options presented to the utility.

       For each identified batch job for which the qalter utility fails, the
       utility shall not alter any attribute of the batch job.

       For each batch job that the qalter utility processes, the utility shall
       not modify any attribute other than those required by the options and
       option-arguments presented to the utility.

       The qalter utility shall alter batch jobs by sending a Modify Job
       Request to the batch server that manages each batch job. At the time
       the qalter utility exits, it shall have modified the batch job
       corresponding to each successfully processed batch job__identifier.  An
       attempt to alter the attributes of a batch job in the RUNNING state is
       implementation-defined.

OPTIONS
       The qalter utility shall conform to the Base Definitions volume of
       POSIX.1-2017, Section 12.2, Utility Syntax Guidelines.

       The following options shall be supported by the implementation:

       -a date__time
                 Redefine the time at which the batch job becomes eligible for
                 execution.

                 The date__time argument shall be in the same form and
                 represent the same time as for the touch utility. The time so
                 represented shall be set into the Execution__Time attribute of
                 the batch job. If the time specified is earlier than the
                 current time, the -a option shall have no effect.

       -A account__string
                 Redefine the account to which the resource consumption of the
                 batch job should be charged.

                 The syntax of the account__string option-argument is
                 unspecified.

                 The qalter utility shall set the Account__Name attribute of
                 the batch job to the value of the account__string option-
                 argument.

       -c interval
                 Redefine whether the batch job should be checkpointed, and if
                 so, how often.

                 The qalter utility shall accept a value for the interval
                 option-argument that is one of the following:

                 n         No checkpointing is to be performed on the batch
                           job (NO_CHECKPOINT).

                 s         Checkpointing is to be performed only when the
                           batch server is shut down (CHECKPOINT_AT_SHUTDOWN).

                 c         Automatic periodic checkpointing is to be performed
                           at the Minimum__Cpu__Interval attribute of the batch
                           queue, in units of CPU minutes
                           (CHECKPOINT_AT_MIN_CPU_INTERVAL).

                 c=minutes Automatic periodic checkpointing is to be performed
                           every minutes of CPU time, or every
                           Minimum__Cpu__Interval minutes, whichever is greater.
                           The minutes argument shall conform to the syntax
                           for unsigned integers and shall be greater than
                           zero.

                 An implementation may define other checkpoint intervals. The
                 conformance document for an implementation shall describe any
                 alternative checkpoint intervals, how they are specified,
                 their internal behavior, and how they affect the behavior of
                 the utility.

                 The qalter utility shall set the Checkpoint attribute of the
                 batch job to the value of the interval option-argument.

       -e path__name
                 Redefine the path to be used for the standard error stream of
                 the batch job.

                 The qalter utility shall accept a path__name option-argument
                 that conforms to the syntax of the path__name element defined
                 in the System Interfaces volume of POSIX.1-2017, which can be
                 preceded by a host name element of the form hostname:.

                 If the path__name option-argument constitutes an absolute
                 pathname, the qalter utility shall set the Error__Path
                 attribute of the batch job to the value of the path__name
                 option-argument, including the host name element, if present.

                 If the path__name option-argument constitutes a relative
                 pathname and no host name element is specified, the qalter
                 utility shall set the Error__Path attribute of the batch job
                 to the value of the absolute pathname derived by expanding
                 the path__name option-argument relative to the current
                 directory of the process that executes the qalter utility.

                 If the path__name option-argument constitutes a relative
                 pathname and a host name element is specified, the qalter
                 utility shall set the Error__Path attribute of the batch job
                 to the value of the option-argument without expansion.

                 If the path__name option-argument does not include a host name
                 element, the qalter utility shall prefix the pathname in the
                 Error__Path attribute with hostname:, where hostname is the
                 name of the host upon which the qalter utility is being
                 executed.

       -h hold__list
                 Redefine the types of holds, if any, on the batch job. The
                 qalter -h option shall accept a value for the hold__list
                 option-argument that is a string of alphanumeric characters
                 in the portable character set.

                 The qalter utility shall accept a value for the hold__list
                 option-argument that is a string of one or more of the
                 characters 'u', 's', or 'o', or the single character 'n'.
                 For each unique character in the hold__list option-argument,
                 the qalter utility shall add a value to the Hold__Types
                 attribute of the batch job as follows, each representing a
                 different hold type:

                 u     USER

                 s     SYSTEM

                 o     OPERATOR

                 If any of these characters are duplicated in the hold__list
                 option-argument, the duplicates shall be ignored. An existing
                 Hold__Types attribute can be cleared by the hold type:

                 n     NO_HOLD

                 The qalter utility shall consider it an error if any hold
                 type other than 'n' is combined with hold type 'n'.  Strictly
                 conforming applications shall not repeat any of the
                 characters 'u', 's', 'o', or 'n' within the hold__list option-
                 argument. The qalter utility shall permit the repetition of
                 characters, but shall not assign additional meaning to the
                 repeated characters. An implementation may define other hold
                 types. The conformance document for an implementation shall
                 describe any additional hold types, how they are specified,
                 their internal behavior, and how they affect the behavior of
                 the utility.

       -j join__list
                 Redefine which streams of the batch job are to be merged. The
                 qalter -j option shall accept a value for the join__list
                 option-argument that is a string of alphanumeric characters
                 in the portable character set.

                 The qalter utility shall accept a join__list option-argument
                 that consists of one or more of the characters 'e' and 'o',
                 or the single character 'n'.

                 All of the other batch job output streams specified shall be
                 merged into the output stream represented by the character
                 listed first in the join__list option-argument.

                 For each unique character in the join__list option-argument,
                 the qalter utility shall add a value to the Join__Path
                 attribute of the batch job as follows, each representing a
                 different batch job stream to join:

                 e     The standard error of the batch job (JOIN_STD_ERROR).

                 o     The standard output of the batch job (JOIN_STD_OUTPUT).

                 An existing Join__Path attribute can be cleared by the join
                 type:

                 n     NO_JOIN

                 If 'n' is specified, then no files are joined. The qalter
                 utility shall consider it an error if any join type other
                 than 'n' is combined with join type 'n'.

                 Strictly conforming applications shall not repeat any of the
                 characters 'e', 'o', or 'n' within the join__list option-
                 argument. The qalter utility shall permit the repetition of
                 characters, but shall not assign additional meaning to the
                 repeated characters.

                 An implementation may define other join types. The
                 conformance document for an implementation shall describe any
                 additional batch job streams, how they are specified, their
                 internal behavior, and how they affect the behavior of the
                 utility.

       -k keep__list
                 Redefine which output of the batch job to retain on the
                 execution host.

                 The qalter -k option shall accept a value for the keep__list
                 option-argument that is a string of alphanumeric characters
                 in the portable character set.

                 The qalter utility shall accept a keep__list option-argument
                 that consists of one or more of the characters 'e' and 'o',
                 or the single character 'n'.

                 For each unique character in the keep__list option-argument,
                 the qalter utility shall add a value to the Keep__Files
                 attribute of the batch job as follows, each representing a
                 different batch job stream to keep:

                 e     The standard error of the batch job (KEEP_STD_ERROR).

                 o     The standard output of the batch job (KEEP_STD_OUTPUT).

                 If both 'e' and 'o' are specified, then both files are
                 retained. An existing Keep__Files attribute can be cleared by
                 the keep type:

                 n     NO_KEEP

                 If 'n' is specified, then no files are retained. The qalter
                 utility shall consider it an error if any keep type other
                 than 'n' is combined with keep type 'n'.

                 Strictly conforming applications shall not repeat any of the
                 characters 'e', 'o', or 'n' within the keep__list option-
                 argument. The qalter utility shall permit the repetition of
                 characters, but shall not assign additional meaning to the
                 repeated characters. An implementation may define other keep
                 types. The conformance document for an implementation shall
                 describe any additional keep types, how they are specified,
                 their internal behavior, and how they affect the behavior of
                 the utility.

       -l resource__list
                 Redefine the resources that are allowed or required by the
                 batch job.

                 The qalter utility shall accept a resource__list option-
                 argument that conforms to the following syntax:


                     resource=value[,,resource=value,,...]

                 The qalter utility shall set one entry in the value of the
                 Resource__List attribute of the batch job for each resource
                 listed in the resource__list option-argument.

                 Because the list of supported resource names might vary by
                 batch server, the qalter utility shall rely on the batch
                 server to validate the resource names and associated values.
                 See Section 3.3.3, Multiple Keyword-Value Pairs for a means
                 of removing keyword=value (and value@keyword) pairs and other
                 general rules for list-oriented batch job attributes.

       -m mail__options
                 Redefine the points in the execution of the batch job at
                 which the batch server is to send mail about a change in the
                 state of the batch job.

                 The qalter -m option shall accept a value for the
                 mail__options option-argument that is a string of alphanumeric
                 characters in the portable character set.

                 The qalter utility shall accept a value for the mail__options
                 option-argument that is a string of one or more of the
                 characters 'e', 'b', and 'a', or the single character 'n'.
                 For each unique character in the mail__options option-
                 argument, the qalter utility shall add a value to the
                 Mail__Users attribute of the batch job as follows, each
                 representing a different time during the life of a batch job
                 at which to send mail:

                 e     MAIL_AT_EXIT

                 b     MAIL_AT_BEGINNING

                 a     MAIL_AT_ABORT

                 If any of these characters are duplicated in the mail__options
                 option-argument, the duplicates shall be ignored.

                 An existing Mail__Points attribute can be cleared by the mail
                 type:

                 n     NO_MAIL

                 If 'n' is specified, then mail is not sent. The qalter
                 utility shall consider it an error if any mail type other
                 than 'n' is combined with mail type 'n'.  Strictly conforming
                 applications shall not repeat any of the characters 'e', 'b',
                 'a', or 'n' within the mail__options option-argument. The
                 qalter utility shall permit the repetition of characters but
                 shall not assign additional meaning to the repeated
                 characters.

                 An implementation may define other mail types. The
                 conformance document for an implementation shall describe any
                 additional mail types, how they are specified, their internal
                 behavior, and how they affect the behavior of the utility.

       -M mail__list
                 Redefine the list of users to which the batch server that
                 executes the batch job is to send mail, if the batch server
                 sends mail about the batch job.

                 The syntax of the mail__list option-argument is unspecified.
                 If the implementation of the qalter utility uses a name
                 service to locate users, the utility shall accept the syntax
                 used by the name service.

                 If the implementation of the qalter utility does not use a
                 name service to locate users, the implementation shall accept
                 the following syntax for user names:


                     mail_address[,,mail_address,,...]

                 The interpretation of mail__address is implementation-defined.

                 The qalter utility shall set the Mail__Users attribute of the
                 batch job to the value of the mail__list option-argument.

       -N name   Redefine the name of the batch job.

                 The qalter -N option shall accept a value for the name
                 option-argument that is a string of up to 15 alphanumeric
                 characters in the portable character set where the first
                 character is alphabetic.

                 The syntax of the name option-argument is unspecified.

                 The qalter utility shall set the Job__Name attribute of the
                 batch job to the value of the name option-argument.

       -o path__name
                 Redefine the path for the standard output of the batch job.

                 The qalter utility shall accept a path__name option-argument
                 that conforms to the syntax of the path__name element defined
                 in the System Interfaces volume of POSIX.1-2017, which can be
                 preceded by a host name element of the form hostname:.

                 If the path__name option-argument constitutes an absolute
                 pathname, the qalter utility shall set the Output__Path
                 attribute of the batch job to the value of the path__name
                 option-argument.

                 If the path__name option-argument constitutes a relative
                 pathname and no host name element is specified, the qalter
                 utility shall set the Output__Path attribute of the batch job
                 to the absolute pathname derived by expanding the path__name
                 option-argument relative to the current directory of the
                 process that executes the qalter utility.

                 If the path__name option-argument constitutes a relative
                 pathname and a host name element is specified, the qalter
                 utility shall set the Output__Path attribute of the batch job
                 to the value of the path__name option-argument without any
                 expansion of the pathname.

                 If the path__name option-argument does not include a host name
                 element, the qalter utility shall prefix the pathname in the
                 Output__Path attribute with hostname:, where hostname is the
                 name of the host upon which the qalter utility is being
                 executed.

       -p priority
                 Redefine the priority of the batch job.

                 The qalter utility shall accept a value for the priority
                 option-argument that conforms to the syntax for signed
                 decimal integers, and which is not less than -1024 and not
                 greater than 1023.

                 The qalter utility shall set the Priority attribute of the
                 batch job to the value of the priority option-argument.

       -r y|n    Redefine whether the batch job is rerunnable.

                 If the value of the option-argument is 'y', the qalter
                 utility shall set the Rerunable attribute of the batch job to
                 TRUE.

                 If the value of the option-argument is 'n', the qalter
                 utility shall set the Rerunable attribute of the batch job to
                 FALSE.

                 The qalter utility shall consider it an error if any
                 character other than 'y' or 'n' is specified in the option-
                 argument.

       -S path__name__list
                 Redefine the shell that interprets the script at the
                 destination system.

                 The qalter utility shall accept a path__name__list option-
                 argument that conforms to the following syntax:


                     pathname[@host][,pathname[@host],...]

                 The qalter utility shall accept only one pathname that is
                 missing a corresponding host name. The qalter utility shall
                 allow only one pathname per named host.

                 The qalter utility shall add a value to the Shell__Path__List
                 attribute of the batch job for each entry in the
                 path__name__list option-argument. See Section 3.3.3, Multiple
                 Keyword-Value Pairs for a means of removing keyword=value
                 (and value@keyword) pairs and other general rules for list-
                 oriented batch job attributes.

       -u user__list
                 Redefine the user name under which the batch job is to run at
                 the destination system.

                 The qalter utility shall accept a user__list option-argument
                 that conforms to the following syntax:


                     username[@host][,,username[@host],,...]

                 The qalter utility shall accept only one user name that is
                 missing a corresponding host name. The qalter utility shall
                 accept only one user name per named host.

                 The qalter utility shall add a value to the User__List
                 attribute of the batch job for each entry in the user__list
                 option-argument. See Section 3.3.3, Multiple Keyword-Value
                 Pairs for a means of removing keyword=value (and
                 value@keyword) pairs and other general rules for list-
                 oriented batch job attributes.

OPERANDS
       The qalter utility shall accept one or more operands that conform to
       the syntax for a batch job__identifier (see Section 3.3.1, Batch Job
       Identifier).

STDIN
       Not used.

INPUT FILES
       None.

ENVIRONMENT VARIABLES
       The following environment variables shall affect the execution of
       qalter:

       LANG      Provide a default value for the internationalization
                 variables that are unset or null. (See the Base Definitions
                 volume of POSIX.1-2017, Section 8.2, Internationalization
                 Variables the precedence of internationalization variables
                 used to determine the values of locale categories.)

       LC__ALL    If set to a non-empty string value, override the values of
                 all the other internationalization variables.

       LC__CTYPE  Determine the locale for the interpretation of sequences of
                 bytes of text data as characters (for example, single-byte as
                 opposed to multi-byte characters in arguments).

       LC__MESSAGES
                 Determine the locale that should be used to affect the format
                 and contents of diagnostic messages written to standard
                 error.

       LOGNAME   Determine the login name of the user.

       TZ        Determine the timezone used to interpret the date-time
                 option-argument. If TZ is unset or null, an unspecified
                 default timezone shall be used.

ASYNCHRONOUS EVENTS
       Default.

STDOUT
       None.

STDERR
       The standard error shall be used only for diagnostic messages.

OUTPUT FILES
       None.

EXTENDED DESCRIPTION
       None.

EXIT STATUS
       The following exit values shall be returned:

        0    Successful completion.

       >0    An error occurred.

CONSEQUENCES OF ERRORS
       In addition to the default behavior, the qalter utility shall not be
       required to write a diagnostic message to standard error when the error
       reply received from a batch server indicates that the batch
       job__identifier does not exist on the server. Whether or not the qalter
       utility attempts to locate the batch job on other batch servers is
       implementation-defined.

       The following sections are informative.

APPLICATION USAGE
       None.

EXAMPLES
       None.

RATIONALE
       The qalter utility allows users to change the attributes of a batch
       job.

       As a means of altering a queued job, the qalter utility is superior to
       deleting and requeuing the batch job insofar as an altered job retains
       its place in the queue with some traditional selection algorithms. In
       addition, the qalter utility is both shorter and simpler than a
       sequence of qdel and qsub utilities.

       The result of an attempt on the part of a user to alter a batch job in
       a RUNNING state is implementation-defined because a batch job in the
       RUNNING state will already have opened its output files and otherwise
       performed any actions indicated by the options in effect at the time
       the batch job began execution.

       The options processed by the qalter utility are identical to those of
       the qsub utility, with a few exceptions: -V, -v, and -q.  The -V and -v
       are inappropriate for the qalter utility, since they capture
       potentially transient environment information from the submitting
       process. The -q option would specify a new queue, which would largely
       negate the previously stated advantage of using qalter; furthermore,
       the qmove utility provides a superior means of moving jobs.

       Each of the following paragraphs provides the rationale for a qalter
       option.

       Additional rationale concerning these options can be found in the
       rationale for the qsub utility.

       The -a option allows users to alter the date and time at which a batch
       job becomes eligible to run.

       The -A option allows users to change the account that will be charged
       for the resources consumed by the batch job. Support for the -A option
       is mandatory for conforming implementations of qalter, even though
       support of accounting is optional for servers. Whether or not to
       support accounting is left to the implementor of the server, but
       mandatory support of the -A option assures users of a consistent
       interface and allows them to control accounting on servers that support
       accounting.

       The -c option allows users to alter the checkpointing interval of a
       batch job. A checkpointing system, which is not defined by
       POSIX.1-2008, allows recovery of a batch job at the most recent
       checkpoint in the event of a crash. Checkpointing is typically used for
       jobs that consume expensive computing time or must meet a critical
       schedule. Users should be allowed to make the tradeoff between the
       overhead of checkpointing and the risk to the timely completion of the
       batch job; therefore, this volume of POSIX.1-2017 provides the
       checkpointing interval option. Support for checkpointing is optional
       for servers.

       The -e option allows users to alter the name and location of the
       standard error stream written by a batch job. However, the path of the
       standard error stream is meaningless if the value of the Join__Path
       attribute of the batch job is TRUE.

       The -h option allows users to set the hold type in the Hold__Types
       attribute of a batch job. The qhold and qrls utilities add or remove
       hold types to the Hold__Types attribute, respectively. The -h option has
       been modified to allow for implementation-defined hold types.

       The -j option allows users to alter the decision to join (merge) the
       standard error stream of the batch job with the standard output stream
       of the batch job.

       The -l option allows users to change the resource limits imposed on a
       batch job.

       The -m option allows users to modify the list of points in the life of
       a batch job at which the designated users will receive mail
       notification.

       The -M option allows users to alter the list of users who will receive
       notification about events in the life of a batch job.

       The -N option allows users to change the name of a batch job.

       The -o option allows users to alter the name and path to which the
       standard output stream of the batch job will be written.

       The -P option allows users to modify the priority of a batch job.
       Support for priority is optional for batch servers.

       The -r option allows users to alter the rerunability status of a batch
       job.

       The -S option allows users to change the name and location of the shell
       image that will be invoked to interpret the script of the batch job.
       This option has been modified to allow a list of shell name and
       locations associated with different hosts.

       The -u option allows users to change the user identifier under which
       the batch job will execute.

       The job__identifier operand syntax is provided so that the user can
       differentiate between the originating and destination (or executing)
       batch server. These may or may not be the same. The .server__name
       portion identifies the originating batch server, while the @server
       portion identifies the destination batch server.

       Historically, the qalter utility has been a component of the Network
       Queuing System (NQS), the existing practice from which this utility has
       been derived.

FUTURE DIRECTIONS
       The qalter utility may be removed in a future version.

SEE ALSO
       Chapter _3, Batch Environment Services, qdel, qhold, qmove, qrls, qsub,
       touch

       The Base Definitions volume of POSIX.1-2017, Chapter _8, Environment
       Variables, Section 12.2, Utility Syntax Guidelines

COPYRIGHT
       Portions of this text are reprinted and reproduced in electronic form
       from IEEE Std 1003.1-2017, Standard for Information Technology --
       Portable Operating System Interface (POSIX), The Open Group Base
       Specifications Issue 7, 2018 Edition, Copyright (C) 2018 by the
       Institute of Electrical and Electronics Engineers, Inc and The Open
       Group.  In the event of any discrepancy between this version and the
       original IEEE and The Open Group Standard, the original IEEE and The
       Open Group Standard is the referee document. The original Standard can
       be obtained online at http://www.opengroup.org/unix/online.html .

       Any typographical or formatting errors that appear in this page are
       most likely to have been introduced during the conversion of the source
       files to man page format. To report such errors, see
       https://www.kernel.org/doc/man-pages/reporting_bugs.html .



IEEE/The Open Group                  2017                            QALTER(1)
