Configuring the Jackrabbit Janitor Thread

On a distributed ActiveMatrix BPM system, when adding a new node to the system, the operation to add the new node can take a long time to complete if the BPM database contains a large number of Jackrabbit journal entries (in the APA_JL_Journal table).

(The Jackrabbit content repository is used by Application Development. Jackrabbit maintains an internal journal of all changes made to the repository, and replays those journal entries when a new node gets added. If the journal contains a large number of entries, the time taken to replay them can be significant.)

Configuring the Jackrabbit janitor thread can prevent this problem. The thread periodically cleans up the journal entries so that the number of records in the APA_JL_Journal database table does not continually grow.

The janitor thread can be configured using the following parameters in the CONFIG_HOME\bpm\bpm_app_name\appdev\repository.xml file:

<-- Enable clean-up thread -->
<param name="janitorEnabled" value="true"/>

<-- Sleep time in seconds (default = 24 hours) -->
<-- <param name="janitorSleep" value="86400"> -->

<-- Initiate the first run at 1:00 am (default = 3:00 am) -->
<param name="janitorFirstRunHourOfDay" value="1"/>

Procedure

  1. In TIBCO Administrator, stop the appdev component on each running BPM node. To do this:
    1. On the Applications tab, select amx.bpm.app > System > amx.bpm.app.
    2. On the General tab, expand the appdev Composite Component and select the apps WebApp Component.
    3. On the Details tab, select each node on which the component is running and click Stop.
  2. Open the CONFIG_HOME\bpm\bpm_app_name\appdev\repository.xml file in a text editor.
  3. Change the janitorEnabled, janitorSleep and janitorFirstRunHourOfDay values as required. Do NOT change any other values in the file.
    Note: If you want to change the janitorSleep value, remember to uncomment it as well. For example, to set janitorSleep to 12 hours instead of the default 24 hours, change the value to:
    <param name="janitorSleep" value="43200"/>
  4. Save your changes.
  5. Restart the appdev component on each running BPM node.