1. Overview

Once you have the Batch Manager package and the Batch Manager client installed, you are ready to begin the process of setting up and configuring your system. Before we dive into the particulars, here is a list of important points to keep in mind regarding the Batch Manager:

The Batch Manager should run continuously 24 x 7

There are at least two reasons for this. First, if the Batch Manager is not running, then you will create a growing backlog of jobs that need to be processed. Secondly, if the Batch Manager is not active for a period of time, it will immediately, when restarted, process all the jobs that are past due.

Don't run the Batch Manager and xTuple ERP on the same server

Best practice for xTuple ERP is to run only PostgreSQL and the production xTuple ERP database on the PostgreSQL server. The Batch Manager requires surprisingly little computing power, as most of the work on a job is actually done on the PostgreSQL server. Therefore, a computer or virtual machine with modest performance will suffice for running the Batch Manager.

Batch Manager user should be PostgreSQL superuser

The permanent user you create to run the Batch Manager should be a PostgreSQL superuser on the database. This is necessary so that the Schedule Server Maintenance job can reindex all tables. This user may also require specific application privileges for certain jobs. If you attempt to run a job through the Batch Manager and the Batch Manager user does not possess a required privilege, a message will indicate this condition under the "Exit Status" column on the Batch Manager status screen.

Avoid multiple Batch Manager instances

To avoid potential conflicts, only one Batch Manager should be connected to an xTuple ERP database at the same time.

The Batch Manager is single threaded

The Batch Manager processes one job at a time. If two jobs are scheduled to run at the same time, the Batch Manager will process them sequentially. Any time the Batch Manager sees a pending job that is past due, it will process that job immediately. Once a job is completed, the user who submitted it will receive a System Message and a notification email.