What are the maximum values I can set for Max Asynchronous Jobs and Max Asynchronous Jobs Per Type?


 

  
 Applies To 
  
 Product(s):eB Information Manager
 Version(s):15.x.x, 16.x.x
 Environment: N/A
 Area: eB System Management Console
 Subarea: Work Queue
 Original Author:Dennis Chan, Bentley Product Advantage Team (with the help of Keith Holce and Linda Marion)

Question:

In eBSMC, within the work queue properties screen, what are the maximum values I can set for Max Asynchronous Jobs and Max Asynchronous Jobs Per Type?

Answer:

The short answer is that the frontend allows you to increase both values to ten (10) respectively.

But before you attempt to increase either or both values in your community, please note that many variables can influence the outcome. The variables include user/process load, CPU usage, memory usage, how the data files were created (initial size, increment size, …), how the data is distributed on the disk, etc. And some of these can even vary depending on the time of day.

Therefore there is no set answer to what the maximum values (of how many jobs can be run concurrently) should be.

When the asynchronous values are higher than one (1), multiple processes would all be targeting the same database objects - in the same tables for example.  So, at some point, you may start to experience deadlocks. It’s exacerbated in the 15.x releases as the default isolation level is serializable which has an aggressive locking strategy. This is changed/improved in V16.x but nevertheless the same discussion applies.

Suggestion:

If you feel that you must attempt more concurrent loads, then it is recommended that you increase the asynchronous value(s) by 1 at a time. Then run loads for a day while monitoring the system. Then evaluate how the system/environment handled that load and determine if another increase looks feasible given the data.