Database Reference
In-Depth Information
tected mode ; no other transactions are permitted. System task jobs do not execute
concurrently due to the restrictions on system tasks, and they cannot overlap
with a previously scheduled execution. eXist makes use of the system task job
both to schedule its synchronization task, which flushes the database journal to
persistent storage, and to execute scheduled backups.
Scheduling Jobs
You can schedule jobs by setting up their configuration with the scheduler in eXist's
configuration file ( $EXIST_HOME/conf.xml ): you add jobs to the scheduler element
indicated by the XPath /exist/scheduler . Remember that changes to the configuration
file are only read when eXist is started.
So, what can you do if you want to schedule a job to run immedi‐
ately, without restarting eXist?
Simply, you must add it to $EXIST_HOME/conf.xml so that it is
persisted across restarts, and also submit it using the scheduler
XQuery extension module (see scheduler ) so that it is scheduled
immediately without needing to restart.
Enabling the scheduler XQuery Extension Module
The scheduler XQuery extension module (see scheduler ) in eXist is not compiled or
enabled by default. To enable it, you need to:
1. Stop eXist.
2. Set include.module.scheduler to true in $EXIST_HOME/extensions/
build.properties .
3. Recompile eXist's extension modules in place (see “Building eXist from Source”
on page 485 ). Make sure to use the extension-modules Ant target!
4. Enable the module in eXist's configuration file ( $EXIST_HOME/conf.xml ) by
uncommenting the line <module uri="http://exist-db.org/xquery/schedu
ler" class="org.exist.xquery.modules.scheduler.SchedulerModule"/> .
5. Start eXist.
Table 16-1 lists the scheduled job arguments.
 
Search WWH ::




Custom Search