Marklogic API用于获取数据库的reindex状态

时间:2015-03-24 15:03:20

标签: marklogic reindex

您好我帮助我使用marklogic API获取数据库的reindex状态。现在我们正在使用这样的东西: 让$ forest-reports:=

            let $forest-reports :=
                for $forest-id in xdmp:database-forests($db-id) return
                xdmp:forest-counts($forest-id, "*")

            return 
            fn:sum(
                for $e in $forest-reports//*[fn:contains(fn:local-name(.), "reindex") and fn:contains(fn:local-name(.), "count")] 
                    where xs:integer($e) gt 0 
                    return xs:integer($e)
            )
        return
            if ($forest-reports) then
                <table>
                    <tr>
                        <td><b>Forest</b></td>
                        <td><b>Fragments to Reindex</b></td>
                    </tr>
                {
                <tr><td colspan="2"><b>{$forest-reports}</b></td></tr>

}                     

但有时这并没有给我们正确的地位。

如果我们遵循正确的方法,请告诉我们。

1 个答案:

答案 0 :(得分:2)

如何使用xdmp:forest-status(),例如:

(
  for $forest-id in xdmp:database-forests(xdmp:database())
  return xdmp:forest-status($forest-id)//*:reindexing
) = fn:true()

HTH!