We define many custom nodes in our application and turn on indexing with the hopes of indexing only a few properties on only a small portion of those custom nodes. From what we read in the following issue:

http://jackrabbit.510166.n4.nabble.com/Writing-indexes-takes-a-long-time-td633631.html

every property on every node type gets indexed unless you have a rule defined to say otherwise. If this is true, then *what is the easiest way to turn off indexing for every node type so that we only need to specify a few rules for the few node types that we need indexing on?* Do you have to specify an <index-rule> for every node type specifying no <property> elements in order to effectively turn all indexing off?

Based on the first example in the following link:

    http://wiki.apache.org/jackrabbit/IndexingConfiguration

an index-rule will apply to all types that extend from the type (nodeType) specified in the rule. Based on that fact we would think the following rule would turn off indexing for every node type. Is this true?

  <index-rule nodeType="nt:base">
  </index-rule>

We ask because our indexes seem huge and rebuilding now takes forever (like 24+ hours) when we need to rebuild the index.

Our configuration ...

===============================================================================
     portion of repository.xml
===============================================================================

<Repository>
    ...
<Workspace name="${wsp.name}">
        ...
<SearchIndex class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
<param name="path" value="${wsp.home}/index"/>
<param name="indexingConfiguration" value="${appl.rep.home}/indexing_configuration.xml"/>
</SearchIndex>
</Workspace>
    ...
<SearchIndex class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
<param name="path" value="${appl.rep.home}/repository/index"/>
<param name="indexingConfiguration" value="${appl.rep.home}/indexing_configuration.xml"/>
</SearchIndex>
    ...
</Repository>

===============================================================================
     indexing_configuration.xml
===============================================================================

<?xml version="1.0"?>
<!DOCTYPE configuration SYSTEM "http://jackrabbit.apache.org/dtd/indexing-configuration-1.1.dtd";> <configuration xmlns:webtora="http://www.trivantis.com/webtora"; xmlns:jcr="http://www.jcp.org/jcr/1.0"; xmlns:nt="http://www.jcp.org/jcr/nt/1.0";>
<index-rule nodeType="webtora:nvresource">
<property>webtora:keywords</property>
<property>webtora:desc</property>
</index-rule>
<index-rule nodeType="webtora:resource">
<property>webtora:keywords</property>
<property>webtora:desc</property>
</index-rule>
<index-rule nodeType="webtora:titleAdminFolder">
<property>webtora:currentId</property>
</index-rule>
<index-rule nodeType="webtora:checkOut">
<property>webtora:userId</property>
</index-rule>
<index-rule nodeType="webtora:revision">
<property>webtora:comment</property>
<property>webtora:labels</property>
</index-rule>
<index-rule nodeType="webtora:noteRevision">
<property>webtora:userId</property>
</index-rule>
<index-rule nodeType="webtora:textNode">
<property>jcr:primaryType</property>
</index-rule>
<index-rule nodeType="webtora:workingTitle">
<property>webtora:name</property>
<property>webtora:titleUUID</property>
</index-rule>
</configuration>

Reply via email to