扩展树缓存已满错误
expanded tree cache full Error
对于以下代码,我的扩展树缓存已满:
xquery version "1.0-ml";
let $result :=
<root>{
cts:search(
fn:collection("metadata-search")/metadata,
cts:and-query((
cts:element-value-query(xs:QName('AssetID'), "*")
))
)/assetIdentifiers/assetIdentifier/AssetID
}</root>
let $path := "D:\Output\input.xml"
return
xdmp:save($path, $result,
<options xmlns="xdmp:save">
<method>xml</method>
</options>
)
但是如果相同的代码我 运行 在迭代模式下它工作正常:
xquery version "1.0-ml";
let $result :=
<root>{
for $data in cts:search(
fn:collection("metadata-search")/metadata,
cts:and-query((
cts:element-value-query(xs:QName('AssetID'), "*")
))
)
return $data/assetIdentifiers/assetIdentifier/AssetID
}</root>
let $path := "D:\Output\input.xml"
return
xdmp:save($path, $result,
<options xmlns="xdmp:save">
<method>xml</method>
</options>
)
数据库中有 450000 项资产,运行 花了 10 分钟,我想知道为什么其他代码构造工作正常,而不是第一个?任何想法,请让我详细了解这段代码的上下文?
对于以下代码,我的扩展树缓存已满:
xquery version "1.0-ml";
let $result :=
<root>{
cts:search(
fn:collection("metadata-search")/metadata,
cts:and-query((
cts:element-value-query(xs:QName('AssetID'), "*")
))
)/assetIdentifiers/assetIdentifier/AssetID
}</root>
let $path := "D:\Output\input.xml"
return
xdmp:save($path, $result,
<options xmlns="xdmp:save">
<method>xml</method>
</options>
)
但是如果相同的代码我 运行 在迭代模式下它工作正常:
xquery version "1.0-ml";
let $result :=
<root>{
for $data in cts:search(
fn:collection("metadata-search")/metadata,
cts:and-query((
cts:element-value-query(xs:QName('AssetID'), "*")
))
)
return $data/assetIdentifiers/assetIdentifier/AssetID
}</root>
let $path := "D:\Output\input.xml"
return
xdmp:save($path, $result,
<options xmlns="xdmp:save">
<method>xml</method>
</options>
)
数据库中有 450000 项资产,运行 花了 10 分钟,我想知道为什么其他代码构造工作正常,而不是第一个?任何想法,请让我详细了解这段代码的上下文?