【发布时间】:2017-09-01 12:55:49
【问题描述】:
我正在尝试在数据更改时触发后端进程。
这是我目前正在使用的工作触发器。
xquery version "1.0-ml";
import module namespace trgr="http://marklogic.com/xdmp/triggers"
at "/MarkLogic/triggers.xqy";
if (xdmp:database() eq xdmp:database("nbcu-test-ml-triggers"))
then ()
else fn:error((), 'NOTTRIGGERSDB', xdmp:database()) ,
trgr:create-trigger(
"typeahead_modify",
"Update Typeahead Document",
trgr:trigger-data-event(trgr:directory-scope("/triplestore/", "1"), trgr:document-content("modify"), trgr:post-commit()),
trgr:trigger-module(
xdmp:database("nbcu-test-ml-modules"),
"/ext/",
"sample-trigger.xqy"),
fn:true(),
xdmp:default-permissions(),
fn:true() )
但是在触发模块的末尾,我想调用一个 xdmp:spawn-function 来进行一些异步处理。
我是权限管理的新手,但我尝试将xdmp:privilege 添加到权限集,但没有奏效。
有人可以帮助建议如何将xdmp:Spawn execute 权限添加到此触发器吗?
谢谢
编辑:我使用 mlgradle 部署 /ext/sample-trigger.xqy
【问题讨论】:
标签: triggers permissions marklogic privileges