Domain Settings

Use this section to specify general settings for the entire domain—not just for a specific component of the domain or server process.

Enter the name of the application server domain. It does not need to match the name that you specified when you created the domain. This name is important only because the Tuxedo Web Monitor and PeopleSoft Watch Server (PSWATCHSRV) use it to identify application server domains and the processes associated with each machine. It should not exceed 8 characters. Generally, you should use the database name in lowercase.

Enter the directory that contains your 64–bit database connectivity software, as in /apps/db/oracle/bin. If the database connectivity directory is not already specified in the path, you can set it by specifying this parameter. The value is added to the path.

On UNIX, if you don't enter a value, it uses the current directory—not the current path. To have it set by default to the current path, enter a period (.).

Note: On Windows, entries that contain a space must be surrounded by quotes. If you don't enter a value, it uses the current path.

Enter a parameter that's supplied to Tuxedo for control of process spawning by using the -p command-line option for all server processes. The default setting (1,600:1,1) rarely needs to be changed.

This setting enables the dynamic decay of spawned server processes as the transaction volume decreases. The value can be loosely translated to mean that if, in 600 seconds, there is less than or equal to one job in the queue, the decay process begins. This is described in more detail in the timeout settings topic of this product documentation.

New server processes will be spawned according to the rule defined here. By default, if there is one outstanding request in the queue for one second or more, an additional process is spawned. Additional processes will be spawned all the way up to the Max Instances defined for that server type. If Max Instances and Min Instances are identical, this setting has no effect.

Note: This parameter applies only if, for PSAPPSRV, the value of Max Instances is greater than that of Min Instances. By default, spawning is disabled.

For more information, also see servopts(s) in the Oracle Tuxedo reference manual.

Spawning results in resource-intensive demands at process initialization because it takes place mainly when the system is starting to undergo increased load and increased queues. In this scenario, you may want to manually scale the size of a domain by starting additional domain processes as desired. In order to manually scale the size of a domain, you need to disable spawning by not entering a value for the Spawn Threshold configuration parameter, which disables the dynamic process spawning for the domain. As a result, you can set the minimum and maximum instances of PSAPPSRV to different values, and you can manually start additional domain processes as desired.

The log directory contains log files the system generates for a domain, such as Tuxedo logs (TUXLOG) and APPSRV logs.

The default log directory for a domain is %PS_SERVDIR\logs.

To specify a custom log directory:

  1. Uncomment the Log Directory setting in the domain's PSAPPSRV.CFG file.

  2. Enter the desired log directory location either directly into the PSAPPSRV.CFG file or through PSADMIN.

  3. Reconfigure the domain using PSADMIN for the new setting to take effect.

When entering custom log directory locations, keep the following length restrictions in mind.

Domain Type

Log Directory Character Length Limit

Application Server

60

Process Scheduler Server

70

Enter y to have Tuxedo restart server processes (except the BBL process) if the server dies abnormally, as in a 'kill' on UNIX or through the Task Manager on Microsoft Windows. Otherwise, enter n.

Often, administrators must set a trace or performance parameter while the domain is up and running. If you enable this option, then you don't need to reboot the domain for the modified parameter value to take effect.

Enter y or n to enable or disable dynamic changes. When disabled, you must reboot (or cycle the processes) for changes to take effect.

When enabled, the server checks an internal time stamp for a particular service request to see if any values have changed for the parameters for which dynamic changes are valid. If values have changed, the system uses the modified parameter value.

You should enable this option in your test and development domains. For production environments, you should enable dynamic changes selectively.

These parameters allow dynamic changes:

  • Recycle Count.

  • Consecutive service failures.

  • Trace SQL and Trace SQL Mask.

  • Trace PC and Trace PC Mask.

  • Trace PPR and Trace PPR Mask.

  • Log Fence.

  • Enable DB Monitoring.

  • Enable Debugging.

  • Dump Memory Image at Crash.

  • Dump Managed Objects at Crash.

  • Log Error Report.

  • Mail Error Report.

  • SMTP Settings (all except SMTPGuaranteed, SMTPTrace, and SMTPSendTime).

  • Analytic Instance Idle Timeout.

  • Analytic Per Server Log.

Note: The parameters that allow dynamic changes are also identified through comments in the PSAPPSRV.CFG file. Look for the phrase “Dynamic changes allowed for X,” where X is the parameter name. This option does not apply to configuration parameters that Tuxedo relies on, such as the number of processes, whether restart is enabled, the port numbers, the amount of handlers, and so on.

Enter a level of network tracing, ranging from –100 (suppressing) to 5 (all). The default is 3.

The trace file is generated in PS_CFG_HOME\appserv\domain\LOGS\psappsrv.log.

Separate individual fields of data within the domain log file(s). If this setting is not explicitly defined, the default value is a single SPACE character. This setting must be uncommented in the configuration file to be enabled.

These meta values can be used as the field separator:

  • TAB

  • SPACE

While the actual key strokes can be used to specify a separator, the escape sequence equivalent of them is not supported. For example \t is not recognized as a tab character. For purpose of clarity, avoid key strokes that are not visible to the naked eye, instead use their meta value equivalents.

This setting is not available through the PSADMIN interface, but can be entered directly into the PSAPPSRV.CFG file.

You can use this parameter conditionally to determine whether you want to do specific logging from your application. You can implement this parameter from PeopleCode using the %AppLogFence system variable. Complete documentation for this option is in the PeopleCode Developer's Guide.

See Using Application Logging.

Enter the character set (default is UTF-8) of the machine to which you typically write and read the traces and log files. If the character sets are not matched between the file and the machine, the file is unreadable. Supported character sets are:

  • ANSI

  • UTF-8

  • UTF8

  • UTF8BOM

  • UNICODE

Note: The UNICODE character set can be used, but it will be deprecated.

Enter a memory threshold for recyclable server processes running within the domain. When the server processes exceed the limit, the system restarts, or recycles, them. This setting applies to all recyclable server processes within the domain. If set to 0, this feature is disabled and the system recycles server processes according to the recycle count setting for that recyclable server process.

To enable the restart memory limit, enter a value, in megabytes, as the memory threshold. For example, if you set the restart memory limit for the domain to 500, any recyclable server process running within the domain restarts after it has consumed 500 megabytes of memory and after the current service request has been processed.

Recyclable server processes include:

  • PSAPPSRV

  • PSANALYTICSRV

  • PSSAMSRV

  • PSQCKSRV

  • PSQRYSRV

  • Integration Broker server processes

The restart memory limit can be set at the individual server process level as well. That is, you can set the restart memory limit for the entire domain using the setting in the [Domain Settings] section of the configuration file, or you can set it for a specific server process to override the domain-level limit for that server process type.

When the system recycles a server process, the system writes in the log file a statement similar to the following:

PSAPPSRV.4356 (9) [2014-05-12T09:02:44.273 QEDMO@<machine-info>.example.com](0) Recycling server due to reaching the configured memory threshold of 150 (cfg section [Domain Settings]).
PSAPPSRV.4356 (9) [2014-05-12T09:02:44.273 QEDMO@<machine-info>.example.com](0) In the last request the memory increased up to 193.
PSAPPSRV.4356 (9) [2014-05-12T09:02:44.277 QEDMO@<machine-info>.example.com](0) Recycling server after 96 services
PSAPPSRV.5016 (0) [2014-05-12T09:02:45.112](0) PeopleTools Release 8.54-901-R1 (Windows) starting. Tuxedo server is APPSRV(99)/1

Note: If you implement this feature, you need to test and monitor the appropriate memory threshold for your site’s performance requirements and resource usage to reach the optimal setting.

The system implements the ProcessRestartMemoryLimit recycling behavior according to these rules:

  • If ProcessRestartMemoryLimit is disabled for the domain (set to 0), and the ProcessRestartMemoryLimit parameter is disabled for each individual server process configuration section, the Recycle Count setting controls when a server process recycles (restarts).

  • If ProcessRestartMemoryLimit is enabled for the domain, all recyclable server processes running in the domain are subject to that memory limit, unless the ProcessRestartMemoryLimit parameter is set to a different value in that server type’s configuration section. For example, assume at the domain level, ProcessRestartMemoryLimit is set to 500, but the ProcessRestartMemoryLimit in the PSQRYSRV section is set to 600. In this case, all recyclable server processes running in the domain will be recycled when a server process consumes 500 megabytes off memory, except for PSQRYSRV, which will not recycle until it reaches the 600 megabyte limit.

  • The ProcessRestartMemoryLimit cannot be set too low so as to prevent the domain from establishing the minimum memory requirements for booting and performing basic operations. If the memory limit is set too low, the domain will not boot, and the system writes an error message into the log file similar to the following:

PSAPPSRV.4272 (0) [2014-05-12T09:18:25.535](0) Taken configuration variable ProcessRestartMemoryLimit from the section [Domain Settings] 20 Mb is not big enough. PSAPPSRV initially needs at least 40 Mb.

For the [Publish&Subscribe] (Integration Broker) server process group, there is an additional layer of priority given to the ProcessRestartMemoryLimit parameter, because you can set the ProcessRestartMemoryLimit parameter at the group level as well. For example:

  • If ProcessRestartMemoryLimit is set within the [Publish&Subscribe] configuration section, that setting overrides any ProcessRestartMemoryLimit setting at the domain level. The ProcessRestartMemoryLimit value set within the [Publish&Subscribe] section applies to all integration server processes (handlers and dispatchers) running in that group within the domain.

  • If ProcessRestartMemoryLimit is set within an individual server process configuration section, such as [PSPUBHND_dflt] (settings for publication contract handler), that setting overrides any ProcessRestartMemoryLimit setting at the [Publish&Subscribe] section level or the domain level.