Optimizing fsync for session and task history files

Configure file synchronization (fsync) operations for session and task history to optimize session manager (SSM) performance in your cluster.

About this task

Workload history in IBM® Spectrum Symphony is recorded in session and task history files. To maintain the latest history, the SSM writes records to these files and performs an fsync call on these files to flush session and task history from memory to disk. Both operations (writing records and calling fsync) occur in the same thread. As a result, a slow fsync call might adversely affect SSM performance.

To avoid performance issues, enable fsync operations on session and task history files to be called in a new thread (distinct from the thread used to write records) and trigger fsync at an interval of your choice. The thread checks open history files one by one at the specified interval and calls fsync on files with unflushed data. You can also completely disable fsync, if required.

Configure fsync settings for each application from the cluster management console by editing the application profile at General Settings > History > History file synchronization interval. If you are manually editing the application profile outside the cluster management console, update the SOAM > DataHistory > fsyncInterval parameter (see the SOAM section).

You can also define this interval for all applications by defining the SOAM_HISTORY_FSYNC_INTERVAL environment variable in the Session Director (SD) service profile at System & Services > EGO Services > Service Profiles (see Session director environment variables).

When both settings are defined, the value of SOAM_HISTORY_FSYNC_INTERVAL in the SD service profile takes precedence over the value of History file synchronization interval (fsyncInterval) in the application profile.

Procedure

  • Follow these steps to enable fsync and specify the interval at which to trigger fsync operations:
    1. From the cluster management console, go to Workload > Symphony > Application Profiles and click your application profile.
    2. In the General Settings > History section, enter the History file synchronization interval in seconds. Valid value is in the 1 - 2147483647 range. Default is 30.
    3. Click Save.
  • Follow these steps to disable fsync:
    1. From the cluster management console, go to Workload > Symphony > Application Profiles and click your application profile.
    2. In the General Settings > History section, enter the History file synchronization interval as 0.
    3. Click Save.

Results

Your settings take effect for fsync operations.