目前,MarkLogic已将多个文档加载到错误的文件分隔符" \" (反斜杠)如下所示。
\TEST\fldr1\fldr2\fldr3\test.xml
\TEST\fldr1\fldr2\fldr3\test1.xml
\TEST\fldr1\fldr2\fldr3\test2.xml
当我尝试表演时,
cts:directory-query("\TEST\fldr1\fldr2\fldr3\", "1")
我收到以下错误。
Directory URI must end with "/"
请让我知道如何处理这个问题。
答案 0 :(得分:3)
使用这些URI,MarkLogic没有查看目录,因此即使转义反斜杠,目录查询也不会起作用。要进行目录查询,您需要重新插入它们。如果不是太多,您可以使用此代码:
(: TEST IN YOUR ENVIRONMENT BEFORE RUNNING! :)
for $uri in cts:uri-match('\*')
return (
xdmp:document-insert(
fn:replace($uri, '\\', '/'),
fn:doc($uri),
xdmp:document-get-permissions($uri),
xdmp:document-get-collections($uri)
),
xdmp:document-delete($uri)
)
根据您拥有的文档数量,您可以在查询控制台中执行此操作。如果没有,您可以增加交易时间限制或查看Corb2。