How do I modify the frequency of content indexing?
Purpose
To change the time of your content indexing, you will need to edit the Quartz configuration. Confluence uses Quartz for scheduling periodic jobs. Confluence Content Indexing frequency is handled using a cron job set in schedulingSubsystemContext.xml
.
This is only applicable up until Confluence 5.9
By default, since Confluence 5.10 Quartz isn't used anymore for scheduling periodic jobs. Therefore then the default interval for indexing queue to be flushed had been hard-coded to 5 seconds
Time is derived from the Confluence server
The time zone is taken from the server on which Confluence is running. To check the time according to the server, do the following:
- Click 'System Information' in the left-hand panel and look at the 'System Time'.
Solution
- Open the Quartz configuration file
schedulingSubsystemContext.xml
located underconfluence/WEB-INF/lib/confluence-x.x.x.jar
. Where x.x.x is your Confluence version number.
For Confluence earlier than 2.6, the index cron job is located in<install dir>\confluence\WEB-INF\classes\schedulingSubsystemContext.xml
. Find the following section of the file:
<bean id="indexQueueFlushTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean"> <property name="jobDetail"> <ref bean="indexQueueFlushJob"/> </property> <property name="cronExpression"> <value>0 0/5 * * * ?</value> </property> </bean>
- The string
'0 0/5 * * * ?'
sets up a Cron Trigger for the job to run every 5 minutes. - Place the modified file as
<install dir>\confluence\WEB-INF\classes\schedulingSubsystemContext.xml
. It will take precedence over the jarred version. - You can set a new time by editing this string. Note that the date and time format in this configuration file is in this order:
Second minute hour day - Restart Confluence.
For example, to set the new time to twenty past ten PM, change the string to '0 20 22 * * ?'
.
For complete details on the formatting of the cron string, please see http://www.opensymphony.com/quartz/api/org/quartz/CronTrigger.html.