The replication processor, also known as the thread, is a batch program that periodically cycles through and processes any replication queue records that were not applied to the SQL database. The name of the thread is the timestamp and the number of the thread.

The cycle period is controlled by the sleep interval set by the Settings button on the Dashboard window of the Pro2 web interface. This value represents the number of seconds that the processor sleeps between cycles. If the value is set to 0, then the batch session exits and must be restarted to resume processing of replication records.

Replication threads

There can be up to five separate threads of replication processors running. For each thread, a separate replBatch.bat from bprepl\Scripts is run (For example: replBatch.bat, replBatch2.bat, replBatch3.bat corresponding to each thread.) Tables are assigned to specific threads in the Properties window of the Pro2 web interface.

Note: To increase the number of replication threads, contact your administrator to modify your license and get additional threads.

For most implementations, one thread is typically enough to maintain pace with the changes to be replicated. For implementations with very high transaction numbers, tables can be spread across up to five queues to manage performance. Individual tables that have exceedingly high transaction volume or are of very high priority for users of the target database can be assigned their own thread.

Other reasons to have tables in separate threads include running static reports on the target database for a subset of tables. These tables are put in their own thread. When it is required to run the static report on the target database, replication for that thread is stopped. Changes for these tables continue to accumulate. When the report is completed, the replication processor for this thread restarts, catches up with the changes in the queue, and then resumes processing the new changes.

Replication log files

Each replication processor writes to two log files replproc(YEARMMDD-thread#).log and repllog(YEARMMDD-thread#).log, that are located in the operating system directory specified by the LOG_DIRECTORY value in the properties table (by default bprepl\repl_log folder). Any errors encountered and general information such as cycle start and stop time and number of records processed are captured here.

These files should be reviewed periodically and require periodic truncation, deletion, or archiving. When the logging level option is set to a setting other than None, the replication processor generates basic log entries, such as when procedure libraries are executed and when the processor queue is started and stopped. Each level builds on the previous level. For example, the Moderate setting logs errors as well as the basic entries generated by the Minimum setting.