Tuning External Purge

You can tune External Purge using the archivethread.properties_hpp_ext file.

  1. Open the archivethread.properties_hpp_ext file in the INSTALL_DIR/properties directory.
  2. Adjust any of the following properties:
    Option Description
    purge_corePoolSize Minimum number of threads. The default is 1.
    purge_maxPoolSize Maximum number of threads. To scale External Purge for a higher load, increase the values for the purge_maxPoolSize and purge_batchSize properties. The default is 30.
    purge_keepAliveTime The External Purge JVM uses a pool of threads to distribute work. This value is the time in milliseconds that the threads will be kept alive if they become idle. If the workload is sporadic, you might need to use a larger value to keep the threads alive longer. The default is 10000.
    purge_maxQueueDepth

    The maximum depth of the in-memory queue. The maximum number of threads consumes a full batch each from this queue. The value must be kept sufficiently high so that enough work exists there for all the threads. A deep queue means fewer round-trips to the database for finding purge candidates. The default is 200000.

    purge_debug Indicates if the debug mode is active. The default is false.
    purge_scavengerSleepTime Amount of time the purge candidate scavenger sleeps between polls, in milliseconds. The default is 10000.
    purge_batchMode

    Indicates if you must wait to commit before reaching the batch count defined by the purge_batchsize parameter.

    Valid values:
    • true - (default) Wait to commit before reaching the batch count. You can commit before reaching the batch count if the depth of the queue is 0.
    • false - Do not wait to commit before reaching the batch count.
    purge_batchSize Batch size. The number of purge candidates per thread before a commit happens. The default is 100.
    purge_dbPool A new database pool that is used by just External Purge. When you create this pool, it references the purge_maxPoolSize property to create the number of threads needed for External Purge. When this pool is used, the database pool specified in Sterling B2B Integrator for all operations is not used in External Purge.
    Note: The following parameters are available in V5.2.5_5 and higher
     
    purge_taskListCapacity Can be used to set the capacity of the deferred delete file requests.
    purge_numberDeleteThreads Can be used to set the number of threads allocated for processing deferred delete file requests.