jackrabbit添加新索引

时间:2013-09-24 08:59:35

标签: jackrabbit jcr

有没有办法在没有重建索引的整个存储库的情况下将新索引添加到jacrkabbit存储库?

IE我的配置文件的索引看起来像这样

<?xml version="1.0"?>
<!DOCTYPE configuration SYSTEM "http://jackrabbit.apache.org/dtd/indexing-configuration-1.0.dtd">
<configuration xmlns:nt="http://www.jcp.org/jcr/nt/1.0" xmlns:ns="http://unicorn.eu/ns" xmlns:jcr="http://www.jcp.org/jcr/1.0">
  <index-rule nodeType="ns:DMSDocument">
    <property>ns:name</property>
  </index-rule>

如果我将其改为此

<?xml version="1.0"?>
<!DOCTYPE configuration SYSTEM "http://jackrabbit.apache.org/dtd/indexing-configuration-1.0.dtd">
<configuration xmlns:nt="http://www.jcp.org/jcr/nt/1.0" xmlns:ns="http://unicorn.eu/ns" xmlns:jcr="http://www.jcp.org/jcr/1.0">
  <index-rule nodeType="ns:DMSDocument">
    <property>ns:name</property>
    <property>ns:fullpath</property>
  </index-rule>
</configuration>

有没有办法让新索引生效而无需重新索引整个存储库?

1 个答案:

答案 0 :(得分:1)

你可以:

  • 更改索引配置
  • 重新启动或重新打开存储库(以便读取配置更改)
  • 遍历所有相关节点,然后“触摸”它们(修改属性,例如上次修改时间等)。这样节点被重新编入索引