SessionTypes section

A session type defines a group of configuration settings for session attributes. Multiple session types can be defined in the SessionTypes section of the application profile, with different configuration settings for each session type. IBM® Spectrum Symphony also defines a system default session type with the name "". You can add or update (or remove) a session type to an existing application dynamically using the cluster management console. Note that within the MapReduce framework, a session is known as a job.

A client application specifies the session type when creating a session. The session type that the client specifies must be configured in this section or it should use the system default.

SessionTypes

Description: Defines the settings for session attributes.

SessionTypes > Type

Description: The Type element defines a session type, which is a group of configuration settings for session attributes.
abortSessionIfClientDisconnect
Description: Specifies whether the session is aborted if the session manager detects that the connection between the client and the session manager is broken:
  • If true, and the transientDisconnectionTimeout expires, the session is aborted.
  • If false, and the transientDisconnectionTimeout expires, the session is retained and its workload continues to run. The client can reconnect to session to resume its workload.
Notes:
  1. If in a new connection a session that was previously disconnected is opened within the transientDisconnectionTimeout period after the original client exited abnormally, the session is not aborted even if abortSessionIfClientDisconnect is set to true.
  2. If the client disconnected from the session manager when the session manager is not reachable, the session is not aborted and is kept in 'OPEN' state even if abortSessionIfClientDisconnect is set to true. This occurs, for example, if the client disconnected from the session manager when the application was disabled with the 'Save Workload' option or if the session manager process was killed. In this case, if you do not want the recovered workload, you must manually kill the session.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: true or false

Default value: true

Related attributes:
  • transientDisconnectionTimeout: Defines how long the session manager waits for a client to reconnect before it aborts the sessions that are open on the client's connection.
abortSessionIfTaskFail
Description: Specifies whether the session is aborted if a task fails (enters the Error state).

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: true or false

Default value: false

abortSessionWithResourceReservation
Description: Specifies that when a task is re-queued for any reason, the session is aborted.
This value is only applicable if you have enabled resource reservation (that is, specified enableResourceReservation="true" in the Consumer section of the application profile). The resource reservation feature is an extension to the minimum service scheduling policy (set by configuring policy="R_MinimumServices" in the Consumer section of your application profile).
Note: As of IBM Spectrum Symphony 7.2, the abortSessionIfTaskRequeue parameter is deprecated. If you configured abortSessionIfTaskRequeue in previous versions of IBM Spectrum Symphony, use the abortSessionWithResourceReservation parameter instead.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: true or false

Default value: false

Related attributes:
  • resourceReservationTimeout: Specifies the maximum number of seconds that resources can be reserved by a session before the session times out. After this timeout period, the session aborts.
  • enableResourceReservation in Consumers: Enables the application to reserve resources for the minimum services (R_MinimumServices) scheduling policy for data affinity.
datasetDependencies
Description: Specifies the names of the data sets that SOAM workloads rely on for grid synchronization. Separate each data set name with a comma.

If you specified Dataset in the dataRequirement attribute under the Consumer section of the application profile to indicate that the workloads rely on data sets, then also specify those data set names here. Separate each data set name with a comma. Each data set name can be up to 32 alphanumeric characters. If you specify only the data set name, the application associates it with the leaf consumer. To specify a specific consumer associated with the data set, prefix the data set name with the consumer path.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: Any valid data set name. Separate each data set name with a comma.

Default value: ""

Related attributes:
  • dataRequirement in Consumer: Stipulates whether SOAM workloads reply n data sets for grid synchronization.
defaultResourceAttributeValue
Description: The default value that is substituted for the term in the preference expression when the value for the term is unknown.

Note that defaultResourceAttributeValue does not apply for MapReduce workload because schedulingAffinity specified in the Consumer section of the application profile does not support None as a valid value for MapReduce workload.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: -1.0E+300 to 1.0E+300

Default value: 1.0E+300

discardResultsOnDelivery
Description: Specifies whether the system discards task output for the session when output has been retrieved by the client.

A value of true sets data to be discarded once output has been retrieved by the client.

A value of false sets data to be discarded only after a session is closed or aborted. Note that if set to false, outstanding output for all sessions are tracked until the session completes.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: true or false

Default value: true

enableCommonDataOptimization
Description: Determines whether common data optimization for multi-slot hosts is enabled. When enabled, common data optimization results in the SSM sending only one copy of common data and common data updates to a multi-slot host allocated to the session. The common data and common data updates are shared by all SIMs serving the session on the same host.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: true or false

Default value: false

mapResourceGroupFilter
Description: A list of resource groups from which the MapReduce job (session) can use resources to run map tasks. Map tasks from a job can only run on resources that belong to one of the resource groups listed in the filter.

The value of mapResourceGroupFilter must match or be a subset of the resource groups specified in the MapReduce section of the application profile. If this setting is not specified, the job's map tasks can run on any of the resource groups specified in the MapReduce section.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: 1 to 256 alphanumeric characters, including all printable characters.

Default value: "" (empty). Resource groups specified in the MapReduce section will be used.

mapTaskJvmOption
Description: Specifies standard Java™ options to be passed to the virtual machine upon invocation for map tasks belonging to a MapReduce job; for example, the maximum heap size that controls the memory available for each map task. Note that mapTaskJvmOption is not supported for IBM Spectrum Symphony workload.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: 1 to 512 alphanumeric characters, including all printable characters.

Default value: "" (empty). The JVM_OPTION specified in $PMR_HOME/conf/pmr-env.sh will be used.

maxQueuedTasksAtSim
Description: Maximum number of pending tasks to queue at the SIM. By default this value is 0 to indicate that only one task is sent at one time to a SIM for each active service.

To enable SSM to queue then dispatch more than one task, increasing SSM performance, set maxQueuedTasksAtSim to 1 or more. Once enabled, then minQueuedTasksAtSim is also used and defaults to 1. If you set maxQueuedTasksAtSim to 1 or more, also ensure it is greater than or equal to minQueuedTasksAtSim.

To disable this feature, set maxQueuedTasksAtSim to 0. Once disabled, then minQueuedTasksAtSim is ignored.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: 0 to 100

Default value: 0

maxServices
Description: The maximum number of service instances that the session will demand and receive. This allows you to cap the number of resources that a session can use. The maxServices attribute is applicable only when the R_MinimumServices or R_PriorityScheduling scheduling policies are used.

To use this maxServices configuration with the R_PriorityScheduling scheduling policy, also set the useMaxServicesForPriorityScheduling parameter in the Consumer section of the application profile to true. Otherwise, the system ignores the maxServices configuration for the R_PriorityScheduling scheduling policy.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: 0 to 2147483647

Default value: 0

Related attributes:
  • policy: Determines how resources are allocated to sessions according to the scheduling policy used. The maxServices attribute is applicable only when the R_MinimumServices or R_PriorityScheduling scheduling policies are used.
minQueuedTasksAtSim
Description: For internal system use only.
minServices
Description: Minimum number of services instances required for each open session of this type. The minServices attribute is applicable only when the R_MinimumServices scheduling policy is used.

IBM Spectrum Symphony attempts to allocate the minimum required number of service instances to each session before proportionally allocating additional available CPUs.

Service instances started on the minimum number of CPU slots remain bound to the session until the session is suspended, killed or closed.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: 0 to 2147483647

Default value: 0

Related attributes:
  • policy: Determines how resources are allocated to sessions according to the scheduling policy used. The minServices attribute is applicable only when the R_MinimumServices scheduling policy is used.
name
Description: Session type name is an identifier for the group of configuration settings. A client application specifies the session type name when creating a session. When a session is created, the configuration settings for the specified session type are applied to that session.

The session type is optional. If you leave this parameter blank ("") or do not set a session type, system default values are used for session attributes. If you specify a session type in the client application, you must also configure the session type in the application profile. The session type name in your application profile and session type you specify in the client must match. If you use an incorrect session type in the client and the specified session type cannot be found in the application profile, an exception is thrown to the client.

Where used: SessionTypes > Type

Required or optional: Required

Valid values: 1 to 256 alphanumeric characters, including all printable characters.

persistIncompleteAttemptHistory
Description: Specifies whether to retain information about incomplete task attempts, including incomplete attempt details, reason for the incomplete attempts, and number of incomplete attempts.
  • all: Persists history for all incomplete task attempts
  • none: Does not persist incomplete task attempt history

When persistIncompleteAttemptHistory=all is configured in the application profile, then the Incomplete Attempts tab in the cluster management console shows details of each attempt for the same task. By default, the persistIncompleteAttemptHistory parameter is set to none. Set it to all so that the cluster management console shows the attempt history.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: none or all

Default value: none

persistSessionHistory
Description: Specifies whether to retain session history. If any form of task history is retained, session history must also be retained.
Session history information includes, but is not limited to:
  • Session creation and end times
  • Final state reached by the session
  • Summary of tasks for the session

Any unrecoverable sessions that are not in their final states are not recorded.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: none or all

Default value: all

Related attributes:
  • path in SOAM > DataHistory: Session history is stored in the history files whose location is defined by path
  • persistTaskHistory: If task history is retained, session history must also be retained
persistTaskHistory
Description: Specifies whether to retain no task history, all task history, or only task history for error tasks. Session history must also be retained for task history to be retained.

The task history contains details about the task such as run time, rerun, and rerun counts.

Any unrecoverable tasks that are not in their final states are not recorded.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: none, all, or error:
  • none: Does not persist task history
  • all: Persists history for all tasks
  • error: Persists history only for tasks that end in error

Default value: all

Related attributes:
  • path in SOAM > DataHistory: Task history is stored in the task history files whose location is defined by path
  • persistSessionHistory: If task history is retained, session history must also be retained
preemptionGracePeriod
Description: Number of milliseconds to allow the current running service method to complete and the service instance to clean up when the resource on which the service instance is running is preempted. If the service method and cleanup does not complete within the set time, IBM Spectrum Symphony terminates the instance. If the timeout has not expired, IBM Spectrum Symphony initiates cleanup after the current running service method completes. You can also set preemptionGracePeriod from the API. The API settings overrides the application profile setting. For more details, refer to the IBM Spectrum Symphony API.
  • C++: SessionCreationAttributes.setAttribute(SessionCreationAttributes::PreemptionGracePeriod,"10000");
  • Java: SessionCreationAttributes.setAttribute(SessionCreationAttributes.PREEMPTION_GRACE_PERIOD,"10000");

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: 0 to 2147483647. A value of 0 means that the preemption is done immediately.

preemptionRank
Description: Preemption rank is only used with proportional or minimum services scheduling policy. It indicates the relative importance of a session during the resource reclaim process. Preemption rank is ignored if the priority scheduling policy is in use; in this case, session priority determines the reclaim order.

When the system needs to reclaim a resource, preemption rank is used to determine the relative importance of different sessions, so the system can reclaim a resource from the least important session.

By default, sessions are assigned the lowest rank, 1.

To help protect more important sessions from having a resource reclaimed, assign a higher rank to those sessions only. In a case where child tasks cannot complete after the parent is interrupted, it is a good idea to let the child tasks have a low session rank, and assign a higher rank to the parent task.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: 1 to 10000

Default value: 1

preemptive
Descrtiption: Specifies whether the session can preempt other sessions when it has workload to run.

If true, the session preempts sessions to get resources to finish the session as soon as possible.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: true ro false

Default value: false

Related attributes:
  • policy: Determines how resources are allocated to sessions according to the scheduling policy used.
  • preemptionScope: Determines whether sessions in the application can preempt sessions of lesser or equal rank, or only preempt sessions of low ranking.
preference
Description: Resource preference for the session expressed as a string. The expression, which contains resource attributes capable of being monitored, is evaluated against the attributes of each service/host available to the session in order to find the most preferred resource for the session.

Note that preference does not apply for MapReduce workload because schedulingAffinity attribute specified in the Consumer section of the application profile does not support None as a valid value for MapReduce workload.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: Alphanumeric characters and underscore, and must start with an alphabetical character. Valid operators include +, -, *, and /.

priority
Description: Specifies the session priority, where 1 is the lowest priority and 10000 is the highest priority. If there are multiple open sessions, the session priority affects how resources are distributed across sessions.

The resource distribution is also affected by the scheduling policy of the session manager. For more details, refer to the policy attribute in the Consumer section.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: 1 to 10000

Default value: 1

Related attributes:
  • policy: Determines how resources are allocated to sessions according to the scheduling policy used
reclaimGracePeriod
Description: Number of milliseconds to allow the current running service method to complete and the service instance to clean up when the resource on which the service instance is running is reclaimed. If the service method and cleanup does not complete within the set time, then IBM Spectrum Symphony will terminate the instance. If the timeout has not expired, IBM Spectrum Symphony will initiate cleanup after the current running service method completes.

When this reclaimGracePeriod is less than EGO Consumer reclaim grace period, the reclaimGracePeriod takes effect.

When this reclaimGracePeriod is greater than or equal to EGO Consumer reclaim grace period, the EGO Consumer reclaim grace period takes effect.

If the reclaimGracePeriod is not defined, IBM Spectrum Symphony compares the taskGracePeriod with the EGO Consumer reclaim grace period.

If the Invoke method was running and completes during the applied reclaim grace period, the result of that method is treated as it would be treated under normal circumstances.

If the Invoke method was running and does not complete before the applied reclaim grace period expires, the service instance on which the task is running is terminated and the task is re-queued.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: 0 to 2147483647. A value of -1 indicates unlimited grace period, the EGO Consumer reclaim grace period is used instead.

Default value: -1

Related attributes:
  • taskGracePeriod: Determines the number of milliseconds to allow a task to continue running after a session of the task is suspended by a user.
recoverable
Description: Specifies whether the session and its workload can be recovered if the session manager restarts or fails over.

If true, the data for tasks and other session information are retained to attempt to recover the session in a failover situation.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: true or false

Default value: false

Related attributes:
  • workDir from SOAM > SSM: Defines where working files are stored
reduceResourceGroupFilter
Description: A list of resource groups from which the MapReduce job (session) can use resources to run reduce tasks. Reduce tasks from a job can only run on resources that belong to one of the resource groups listed in the filter.

The value of reduceResourceGroupFilter must match or be a subset of the resource groups specified in the MapReduce section of the application profile. If this setting is not specified, the job's reduce tasks can run on any of the resource groups specified in the MapReduce section.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: 1 to 256 alphanumeric characters, including all printable characters.

Default value: "" (empty). Resource groups specified in the MapReduce section will be used.

reduceServiceToSlotRatio
Description: The number of slots required to run a reduce service instance, represented by a reduce service-to-slot ratio. Reduce tasks from a MapReduce job can only run on service instances that occupy the appropriate number of slots, determined by this ratio.
If reduceServiceToSlotRatio is specified, ensure the following best practices:
  • Configure the exclusive slot allocation policy for resources groups that will be used by multi-slot tasks.
  • If N slots are required to run some reduce tasks in a resource group, configure the targetMrRatio to ensure that at least N slots are placed in the reducer pool on hosts in that resource group. For example, if all hosts in RG1 have 8 slots but some reducers require 6 slots to run, configuring targetMrRatio as 1:1 will cause the M:R ratio on the host to 4:4, where 4 slots is not enough to run a reduce task. In this case, you could configure targetMrRatio to be 1:3, which causes the M:R ratio on the host to 2:6, giving enough slots to run a reduce task.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: 1:N or N:1:
  • 1:N, where N is a positive integer. A 1:N ratio means that 1 service instance runs on multiple slots.
  • N:1, where N is a positive integer with a maximum value of 10. An N:1 ratio means that multiple service instances run on 1 slot.

Default value: 1:1

reduceTaskJvmOption
Description: Specifies standard Java options to be passed to the virtual machine upon invocation for reduce tasks belonging to a MapReduce job; for example, the maximum heap size that controls the memory available for each reduce task. Note that reduceTaskJvmOption is not supported for IBM Spectrum Symphony workload.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: 1 to 512 alphanumeric characters, including all printable characters.

Default value: "" (empty). The JVM_OPTION specified in $PMR_HOME/conf/pmr-env.sh will be used.

resourceGroupFilter
Description: A list of resource groups from which the session can use resources. Tasks from a session can only run on resources that belong to one of the resource groups listed in the filter. Note that resourceGroupFilter is not supported for MapReduce workload.

For IBM Spectrum Symphony workload, the value of the resourceGroupFilter attribute must match or be a subset of the resourceGroupName specified in the Consumer section of the application profile.

Where used: SessionTypes > Type

Required or optional: Optional

Default value: "" (empty). Resource groups specified at the application level (Consumer section) will be used.

Related attributes:
  • resourceGroupName: Resource group from which resources are requested to run service instance managers and services to perform computations for clients.
replanOnEGOAttributeChangeWithDataAware
Description: For internal system use only.
resourcePlanningThreshold
Description: For internal system use only.
serviceName
Description: Name of service that is used to execute the workload for the sessions in this session type. This is any name that you assign to the service to link the session type to the service definition. The name you enter here must match the name entered in the Service section.

Specify a service name only when multiple services are defined in the application profile and when you want to assign the session type a different service than the default service. In the client application, you can use the appropriate API to override the service that is used to execute the workload for the session that you are creating. Refer to the IBM Spectrum Symphony API for more details.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: 1 to 256 alphanumeric characters, including all printable characters. Ensure that angle brackets (< >), single quotation marks ('), double quotation marks ("), parentheses (( )), forward slashes (/), and backward slashes (\) are not used.

Default value: If only one service section is defined in the application profile, uses the service defined in the Service section by default. If more than one service is defined in the application profile, uses the service identified as the default service by default.

serviceToSlotRatio
Description: The number of slots required to run a service instance, represented by a service to slot ratio. Tasks from a session can only run on service instances that occupy the appropriate number of slots, determined by this ratio.

When a child session has a smaller than, or same as, serviceToSlotRatio value than its parent, and all other conditions are also met, a child task can back fill the parent slot. (For specific conditions that qualify a child task to be able to back fill the parent slot, see Backfill parent task resources with child tasks for recursive workload.)

Note that serviceToSlotRatio is not supported for MapReduce workload.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: 1:N or N:1
  • 1:N, where N is a positive integer. A 1:N ratio means that 1 service instance runs on multiple slots.
  • N:1, where N is a positive integer with a maximum value of 10. An N:1 ratio means that multiple service instances run on 1 slot.

    The default maximum for N is 10 service instances per slot. You can, however, increase this maximum, by enabling the UNBOUNDED_SERVICES_ONE_SLOT environment variable in the sd.xml configuration file. If set to TRUE, the new maximum is passed from the SD to the SSM, taking effect for all applications. If set to FALSE, the maximum value of service instances per slot remains at 10. For more information about UNBOUNDED_SERVICES_ONE_SLOT, see Session director environment variables.

Default value: 1:1

sessionRetryLimit
Description: Specifies the number of times the session manager retries to bind the service to a session if the service fails in the SessionEnter or SessionUpdate API method. After the session experiences the specified number of retries, the session is aborted.
Note: The retry count for both of these methods are considered together. For example, if SessionEnter fails once and SessionUpdate fails twice, then the session rerun count is equal to 3. Therefore the sessionRetryLimit should be set to a value that accounts for both SessionEnter and SessionUpdate failures. Not all SessionEnter failures count towards the sessionRetryLimit. After the binding call is successful, if the onInvoke() failure leads to a restartService and if the onSessionEnter() fails during the restart, the attempt is not counted in sessionRetryLimit.

You can specify what events you want IBM Spectrum Symphony to consider as bind failures by configuring attributes in the Service > Control > Method section for your service.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: 0 to 2147483647

Default value: 3

slotDefinitionName
Description: Specifies the slot definition name used for multidimensional scheduling.
Use the slot definition name specified in the MDS > SlotDefinitions > SlotDefinition element of the application profile as the slotDefinitionName value here. Here is an example of the MDS section of an application profile with a slot definition name of cpu_intensive defined:
<MDS planName="MDSPlan1">
	<slotDefinitions>
		<SlotDefinition name="cpu_intensive" default="true">
			<Metric name="ncpus">4</Metric>
			<Metric name="maxmem">250</Metric>
		</SlotDefinition>
		<SlotDefinition name="memory_intensive">
			<Metric name="ncpus">0.5</Metric>
			<Metric name="maxmem">4000</Metric>
		</SlotDefinition>	
	</slotDefinitions>
</MDS>
Associate this slot definition name with the slotDefinitionName element in the SessionTypes section of the application profile by specifying slotDefinitionName="cpu_intensive":
<SessionTypes>
	<Type name="RecoverableJob" priority="1" ... 
		slotDefinitionName="cpu_intensive" .../>
</SessionTypes>

If not specified, IBM Spectrum Symphony uses the SlotDefinition (defined in the MDS > SlotDefinitions > SlotDefinition section), that contains the default="true" attribute.

Where used: SessionTypes > Type

Required or optional: Optional. If not specified, IBM Spectrum Symphony uses the SlotDefinition (defined in the MDS > SlotDefinitions > SlotDefinition section), that contains the default="true" attribute.

Valid values: One of the names defined for MDS > SlotDefinitions > SlotDefinition in the application profile.

Related attributes: SlotDefinition under MDS > SlotDefinitions: Specifies the name of the slot definition for the multidimensional resource plan.

resourceReservationTimeout
Description: Specifies the maximum number of seconds that resources can be reserved by a session before the session times out. After this timeout period, the session aborts.

This value is only applicable if you have enabled the resource reservation feature (that is, specified enableResourceReservation="true" in the Consumer section of the application profile). The resource reservation feature is an extension to the minimum service scheduling policy (set by configuring policy="R_MinimumServices" in the Consumer section of your application profile).

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: 0 to 2147483647

Default value: 0, to indicate no timeout value

Related attributes:
  • enableResourceReservation in Consumers: Specifies the maximum number of seconds that reservations can be reserved by a session before the session times out. After this timeout period, the session aborts.
  • resourceReservationTimeout: Specifies the maximum number of seconds that reservations can be reserved by a session before the session times out. After this timeout period, the session aborts.
suspendGracePeriod
Description: Number of milliseconds to allow a task to continue running after the session for the task is suspended by a user.
A task is considered to be running on a service instance when that service instance is executing its Invoke method for that particular task:
  • If the Invoke method completes during the suspend grace period, the result of that method is treated as it would be treated under normal circumstances.
  • If the Invoke method does not complete before the suspend grace period expires, the service instance on which the task is running is terminated and the task is re-queued.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: 0 to 2147483647

Default value: 100

taskCleanupPeriod
Description: Number of milliseconds to allow a running task to finish executing when the corresponding session has been aborted by the system or a user, or a task is killed by a user. When a session is aborted, the running tasks of the session are canceled, and the service instance manager will not return any task output from the service instance to the session manager even if the task completes before the taskCleanupPeriod expires.

The service instances which have running tasks will not be released until the taskCleanupPeriod expires or the API Invoke call returns.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: 0 to 2147483647

Default value: 250

taskGracePeriod
Description: Number of milliseconds to allow a task to continue running after a session of the task is suspended by a user.

Number of milliseconds to allow the running service method to complete and to allow the service instance to clean up after the resource on which the service instance is running is reclaimed.

For clean up, IBM Spectrum Symphony will initiate the onSessionLeave() method and the onDestroyService() (if applicable) after the current running service method completes:
  • If a task is running and the Invoke method completes during the task grace period, the result of that method is treated as it would be treated under normal circumstances.
  • If a task is running and the Invoke method does not complete before the task grace period expires, the service instance on which the task is running is terminated and the task is re-queued.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: 0 to 2147483647

Default value: 100

Related attributes:
  • suspendGracePeriod: If suspendGracePeriod is defined in the application profile, it overrides the value for taskGracePeriod for the suspend scenario.
  • reclaimGracePeriod: If reclaimGracePeriod is defined in the application profile, it overrides the value for taskGracePeriod for the reclaim scenario.
taskRetryLimit
Description: Specifies the number of attempts to retry a task in a session if the task does not complete successfully because of an application error. After the task has reached this number of retries and still does not complete successfully, the task is put into the Error state.

This attribute is used if the service fails during the API Invoke method.

IBM Spectrum Symphony tries the task once, and then retries the task for the number of times specified for the taskRetryLimit parameter. If the task continues to fail past the number of tries specified in the taskRetryLimit parameter, the system permanently fails the task. For example, if the taskRetryLimit parameter is configured to 5, then when the system retries the task the sixth time, it permanently fails the task.

If the value of taskRetryLimit is 3, the system makes a maximum of 4 attempts to run the task before the task fails.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: 0 to 2147483647

Default value: 3

taskRetryLimitForFailedHost
Description: Specifies the number of times to retry a task in a session if a task does not complete successfully because of an infrastructure problem (such as a compute host is unavailable, or if SIM and the SSM lose connection). After the task has reached this number of retries and still does not complete successfully, the task permanently fails.

This parameter is only applicable to IBM Spectrum Symphony workload; it is not supported for MapReduce jobs.

IBM Spectrum Symphony tries a task once, and then retries the task for the number of times specified for the taskRetryLimitForFailedHost parameter. If the task continues to fail past the number of tried specified in the taskRetryLimitForFailedHost parameter, the system permanently fails the task. For example, if the taskRetryLimitForFailedHost parameter is configured to 5, then when the system retries the task the sixth time, it permanently fails the task.

Where used: SessionTypes > Type

Required or optional: Optional

Valid values: 0 to 1024

Default value: None

SessionTypes > Type > Timeouts

Description: Contains settings to define how long to wait for a session or task to complete. An SNMP alert is thrown if a timeout is triggered.

SessionTypes > Type > Timeouts > SessionTimeout

Description: Defines the timeout for the session. One SessionTimeout is allowed for each session type.
durationInSec
Description: Specifies in seconds how long a session is allowed to run before it times out.

Where used: SessionTypes > Type > Timeouts > SessionTimeout

Required or optional: Optional

Valid values: 1 to 2147483647

Default value: 0, to indicate no timeout occurs.

SessionTypes > Type > Timeouts > TaskTimeout

Description: Defines the timeout for a ask. One TaskTimeout is allowed for each session type.
durationInSec
Description: Specifies in seconds how long a task is allowed to run before it times out.

Where used: SessionTypes > Type > Timeouts > TaskTimeout

Required or optional: Optional

Valid values: 1 to 2147483647

Default value: 0, to indicate no timeout occurs.