KBI 220714 Jobs Fail Intermittently With Exit Code 128

Version

Argent Job Scheduler 4.5A-0410

Date

15 June 2007

Summary

The Customer reports that jobs fail intermittently with exit code 128.

Symptoms

The Customer reports a job that has been running successfully in the Argent Queue Engine for a long period of time now fails intermittently. The status shows as Abend with an exit code of 128.

The Customer reports when he logs on to the Queue Engine server and re-submits the abended job, it completes normally with no errors.

Affected Versions

This behavior can potentially occur on any Microsoft Windows platform running the Argent Queue Engine server. Although the issue was detected in Argent Job Scheduler 4.5-0410, the behavior is due to limitations within the Windows operating system and can occur on any version of Argent Queue Engine.

Affected Platforms

This behavior can potentially occur on any Microsoft Windows platform.

Technical Background

Within Argent Queue Engine, processes are created on the Queue Engine Server. The service log file shows no errors in launching either the Customer job process or the Queue Engine job monitor process.

Research and investigation reveal this behavior is not due to an issue in the Argent Queue Engine product, but rather due to limitations within the Windows operating system.

Resolution

The resolution requires changing an entry in the Windows registry on the affected Queue Engine server.

The Customer needs to inspect the following registry entry:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\SubSystems\Windows

The value should appear similar to the following sample:

%SystemRoot%\system32\csrss.exe

ObjectDirectory=\Windows

SharedSection=1024,3072,512

Windows=On

SubSystemType=Windows

ServerDll=basesrv,1

ServerDll=winsrv:UserServerDllInitialization,3

ServerDll=winsrv:ConServerDllInitialization,2

ProfileControl=Off

MaxRequestThreads=16

The portion of the expression pertaining to this issue is this:

SharedSection=1024,3072,512

  1. If the Customer observes only two values for the SharedSection portion of the expression, the expression should be modified to include three values. To do this, append a “,512” to the SharedSection portion of the expression, so it now reads SharedSection=1024,3072,512. After making the change, the server must be re-booted for the change to take effect.
  2. If the underlying issue recurs, the second value in the SharedSection expression should be modified to a slightly lower value. Argent recommends subtracting 128. The resulting SharedSection expression would then read as SharedSection=1024,2944,512. After making the change, the server must be re-booted for the change to take effect.
  3. If the underlying issue recurs, the second value in the SharedSection expression should be modified to a slightly lower value. Argent recommends subtracting 128. The resulting SharedSection expression would then read as SharedSection=1024,2560,512. After making the change, the server must be re-booted for the change to take effect.

If the issue continues to recur, the Customer must contact Argent support for assistance before making further changes to the

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\SubSystems\Windows

Making any of the changes above could potentially reduce the number of desktop resources available such as menus, strings, and windows.

See Also: Warning About Registry