Skip to main content

Controlling InterSystems IRIS Processes

An InterSystems IRIS system runs a number of processes. Application code as well as InterSystems IRIS system code executes within these processes. There are three categories of InterSystems IRIS processes:

  • User processes, created when a user connects to InterSystems IRIS.

  • Background processes, created when a user issues an ObjectScript Job command, or by the Management Portal or a utility (see Using the Background Tasks Page).

  • InterSystems IRIS system processes.

In this page, the word process by itself refers to both user and background processes.

Available Options

You can manage and control processes using the Management Portal as follows:

Process Management Functions
Function How to Access Function From The Portal
Display process information

Display the Processes page (System Operation > Processes).

Display process details

Display the Processes page, then click Details in the right hand column of the selected process to display the Process Details page.

Suspend/resume a process

Display the Processes page, then click Details in the right hand column of the selected process to display Process Details page. Then click Suspend or Resume on the operations bar, as desired.

Terminate a process

Display the Processes page, then click Details in the right hand column of the selected process to display the Process Details page. Then click Terminate or Terminate with <RESJOB> Error on the operations bar, as desired.

Display process variables

Display the Processes page, then click Details in the right hand column of the selected process to display the Process Details page. Then click the Variables tab to display the process variables.

Broadcast messages to terminals

Display the Processes page and click the Broadcast button to open the Broadcast dialog.

Display Process Information

To display all the active processes on the system and basic information about each, navigate to the Processes page (System Operation > Processes), which displays a table of the processes with statistics about each in columns.

The following table describes the process information available for display:

Process Column Information
Column Heading Definition
Job # Index of the Processes table.
Process ID Operating system process identification number (PID).*
Total CPU Time in ms Total amount of system and user CPU time, in milliseconds, that the process took to execute.
User Name of the user who owns the process.
Device Current device the process is using. This can be:
  • |TCP|IP_address:Port_number — For an outbound connection from the instance.

  • |TCP|Port_number — For the superserver.

  • //./nul — The null device. This discards any output; if you attempt read from it, there will be no data.

Namespace Namespace in which the process is running.
Routine Name of the routine that the process is currently executing.
Commands Number of commands executed.
Globals Number of global references, including updates, executed (database reads and writes) since the process entered InterSystems IRIS.
State Process state. See the StateOpens in a new tab property of the %SYS.ProcessQueryOpens in a new tab class for an explanation of each state.
Client Name Name of the client system that connected to, or initiated the connection to, the process.
Client EXE Name of the executable that called the process.
Client IP IP Address of the system that initiated the process.
O/S Username Username assigned to the process by the operating system.
Details Button appears if you have authority to maintain this process. See Display Process Details.

* An asterisk (*) appears next to the process id if the user entered InterSystems IRIS in programmer mode. A plus or minus sign appears next to Callin processes:

  • + Process is in InterSystems IRIS

  • Process is not in InterSystems IRIS

The Callin API is an InterSystems IRIS facility that lets you execute and evaluate ObjectScript commands and expressions from within C programs.

Display Process Details

The Process Details page displays detailed information about any process. To access this information from the Management Portal:

  1. Display the Processes page (System Operation > Processes).

  2. Click Details in the row of the appropriate process. (This option exists only on processes that you have authority to maintain.)

  3. Optionally select the SQL table & statement info check box. This option adds SQL-related information to the display.

The page also includes information specific to the selected process, which is organized into a General Information table, a Client Application Details table, and a Execution Details table:

General Information
Field Definition
Process ID Process ID (PID) number of this process.
User Name Name of the user currently logged in for this process.
Login Roles Login roles for the process.
Escalated Roles Additional roles granted to the process. These roles plus the Login Roles is the total set of roles granted to the process.
OS User Name Username assigned to the process by the operating system.
NameSpace Namespace in which the process is executing.
Process Priority Priority level of this process.
Global References Number of global references made by this process.
Private Global References Number of private global references made by this process.
Commands Executed Number of commands executed by this process.
Memory Limit Amount of memory (KB) allocated for use by this process.
Memory Peak Peak amount of memory (KB) used by this process.
Memory Used Amount of memory (KB) currently in use by this process.
Total CPU Time Total amount of system and user CPU time, in milliseconds, that the process took to execute.
Private Global Blocks Number of private global data blocks used by this process.
Current Device Name of the I/O device currently in use by this process.
Open Devices List of devices currently opened by this process.
Lock Lock information for this process. Click the link at top of the detail box for additional details (mode, counts, and full reference).
Client Application Details
Field Definition
Client Name Node name of the client that is connected, or initiated the connection, to this process (if any).
EXE Name Name of the executable client application client connected to this process (if any).
Client IP Address IP address of the executable client application client connected to this process (if any).
Info User-defined information (if any).
Execution Details
Field Definition
Process State Current execution state of this process.
In Transaction Indicates whether or not this process is currently within a transaction.
Last Global Reference Last global referenced by this process.
Last SQL Table Reference Last SQL table referenced by this process, if any. (Select the SQL table & statement info check box in order to see this data.)
Routine Name of the routine this process is currently executing.
Source Location Last reported source location (routine name plus offset) of this process.
Source Line Last reported line of source code executed by this process, if available.
Stopping a Process

From this page you can also stop or resume a process. You can stop a process in one of the following ways:

Suspend or Resume a Process

You may want to suspend a process if you are not sure what it is doing and want to investigate, or if a more important process is trying to run and needs the CPU cycles. To access this option from the Management Portal:

  1. Display the Processes page (System Operation > Processes).

  2. Click Details in the row of the appropriate process. This option only exists on processes that you have authority to maintain.

  3. Click Suspend on the options bar.

You may resume a suspended process at any time by clicking Resume from the same page.

Terminate a Process

You may want to terminate a process if it becomes unresponsive or is affecting other processes or users. To access this option from the Management Portal:

  1. Display the Processes page (System Operation > Processes).

  2. Click Details in the row of the appropriate process. (This option exists only on processes that you have authority to maintain. The portal displays the Process Details page for the process you selected.

  3. Click Terminate on the options bar.

    Optionally, to log the status of the process when it terminates, select the Terminate with RESJOB Error check box.

    Note:

    This option is enabled by default.

  4. Click Yes to confirm that you want to terminate the process. There is no way to resume a terminated process.

Display Process Variables

The Process Variables page displays all the variables used in the selected process giving the global name and the value of the global. To access this information from the Management Portal:

  1. Display the Processes page (System Operation > Processes) page.

  2. Click Details in the row of the appropriate process. (This option exists only on processes that you have authority to maintain.) The portal displays the Process Details page for the process you selected.

  3. Click Variables on the options bar.

If you have selected the SQL table & statement info check box, this table includes a column via which you can directly view the cached squery, if any.

Broadcast Messages to Terminals

You can broadcast messages to the terminals associated with a selected process or all processes; this utility is useful, for example, to ask people to sign off the system. However, you must use it carefully or you may cause messages to appear in the middle of reports that may be printing at the time.

The utility temporarily takes control of each terminal as it sends the message. Once the terminal receives the message, the previous process continues. The message appears on the terminal screen; it may disrupt the screen display, but it does not affect user input. The message does not appear in windows running ObjectScript utilities.

To broadcast a message to the terminals associated with a selected process, do the following in the Management Portal:

  1. Display the Processes page (System Operation > Processes).

  2. Click Broadcast (on the options bar) to open the Broadcast window.

  3. Enter the message to broadcast in the text box.

    (The dialog box notifies you if there are no active processes that can accept a message; you do not see a message text box or list of processes. Click Close.)

  4. Select the appropriate check boxes for the appropriate processes (PIDs) to receive the broadcast message. Use the Select All and Clear All buttons accordingly to help with the selection.

  5. Click Broadcast.

  6. After the completed message displays, click Close.

FeedbackOpens in a new tab