1. Home
  2. Transact
  3. System Configuration
  4. Ephesoft Transact Property Files Reference Guide
  5. Pickup Settings 4.x

Pickup Settings 4.x

Topic/Category: Pickup



Beginning from 4.0.x the pickup service is executed on single server in a cluster with our fail-over functionality. This is an automatic service that assigns a random server in the cluster to execute the pickup service. The server on which the pickup service is being executed is responsible for picking up all the batches for the cluster while keeping check on the total execution capacity of the cluster.

Thus server.instance.pick.capacity should be set to total max pickup value that one wants to pick up on the cluster, thus if we have a 3-node cluster and we want it to pickup 15 batches we would set server.instance.pick.capacity to be 15.

Whereas server.instance.max.process.capacity is independent and must be set to the value which user wants to execute on the corresponding server. On our example the user would like to execute 5 batches on each server thus execution capacity must be set to 5 on each server.

NOTE: It is recommended that all servers in the cluster be configured using the same max process capacity and pick capacity values. This is because any server in the cluster can be assigned to run the pickup service in case of a failover.


It is required that all cron settings for the pickup service be offset per server.
Example of cron setttings:

dcma.pickUp.cronjob.expression=30 0/1 * ? * *
dcma.resume.cronjob.expression=30 0/1 * ? * *


dcma.pickUp.cronjob.expression=45 0/1 * ? * *
dcma.resume.cronjob.expression=45 0/1 * ? * *


It is recommended that there be a minimum of 15 seconds difference per server.

Note: From release 4120 onwards batch pickup algorithm has been optimized which will help to pick larger number of batches for processing irrespective of the batch class size, earlier batch pick up time was directly proportional to size of batch class.


There may be scenarios where wait time to get the batch moving from New -> Running state may seem long.

If customer wants to decrease this wait time they can change the cron expression to below :


Change in dcma-workflows property file (Ephesoft\Application\WEB-INF\classes\META-INF\dcma-workflows)
Below changes control the BI from New-> Running State
Server1 Example:

dcma.pickUp.cronjob.expression=0/15 * * ? * *
dcma.resume.cronjob.expression=0/15 * * ? * *

Server2 Example:

dcma.pickUp.cronjob.expression=0/30 * * ? * *
dcma.resume.cronjob.expression=0/30 * * ? * *

Re-adjust your cron so there is always a 15 sec difference between servers as you add more to your cluster.
Was this article helpful to you? Yes No