Changes

Jump to navigation Jump to search
104 bytes removed ,  13:56, 8 July 2019
=Services=
Jobs A job can additionally be registered as persistent services. An additional ''service'' by supplying the {{Code|service}} option has been added to the options list of {{Function|Jobs|jobs:eval}} and {{Function|Jobs|jobs:invoke}}:
<pre class="brush:xquery">
(: register job, which as service; will be run every day at 1 am :)
jobs:eval('db:drop("tmp")', (), map { 'id':'cleanup', 'start':'01:00:00', 'interval':'P1D', 'service': true() }),
'''Some more notes:'''
* All registered jobs job services will be scheduled for evaluation when the BaseX server or BaseX HTTP server is started.
* If a job service is outdated (e.g. because a supplied end time has been exceeded), it will be removed from the jobs file at startup time.
* Job services can be updated: If a new job is registered, and if there is already a job with the same id, the old entry will be replaced.
==jobs:list-details==
 
{{Mark|Updated with Version 9.1:}} registration time added
{| width='100%'
* {{Code|base-uri}}: sets the [https://www.w3.org/TR/xquery-31/#dt-static-base-uri base-uri property] for the query. This URI will be used when resolving relative URIs, such as with {{Code|fn:doc}}.
* {{Code|id}}: sets a custom job id. The id must not start with the standard <code>job</code> prefix, and it can only be assigned if no job with the same name exists.
* {{Code|service}}: additionally registers the job as [[#Services|service]]. Registered services must have no variable bindings.
|-
| '''Errors'''
jobs:eval("prof:sleep(1500)", (), map { 'interval': 'PT1S', 'end': 'PT10S' })
</pre>
* The query in the specified file will be evaluated once:<pre class='brush:xquery'>jobs:eval(xs:anyURI('cleanup.xq'))</pre>* The following expression, if stored as in a file, calls and evaluates itself will be evaluated every 5 seconds:
<pre class="brush:xquery">
jobs:eval(
file:read-text(static-base-uri()),
map { },
map { 'start': 'PT5S' }
)
</pre>
* Evaluate query in specified file:
<pre class='brush:xquery'>
jobs:eval(xs:anyURI('cleanup.xq'), (), ())
</pre>
|}
Bureaucrats, editor, reviewer, Administrators
13,550

edits

Navigation menu