You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by ch...@apache.org on 2014/12/10 13:22:13 UTC

svn commit: r1644383 - /jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexPlanner.java

Author: chetanm
Date: Wed Dec 10 12:22:13 2014
New Revision: 1644383

URL: http://svn.apache.org/r1644383
Log:
OAK-2335 - IndexPlanner does not return plan for mixin based queries

A nt:based based rule should be applicable for all cases

Modified:
    jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexPlanner.java

Modified: jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexPlanner.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexPlanner.java?rev=1644383&r1=1644382&r2=1644383&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexPlanner.java (original)
+++ jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexPlanner.java Wed Dec 10 12:22:13 2014
@@ -336,6 +336,12 @@ class IndexPlanner {
                         return rule;
                     }
                 }
+                //nt:base is applicable for all. This specific condition is
+                //required to support mixin case as filter.getSupertypes() for mixin based
+                //query only includes the mixin type and not nt:base
+                if (rule.getNodeTypeName().equals(JcrConstants.NT_BASE)){
+                    return rule;
+                }
             }
             log.trace("No applicable IndexingRule found for any of the superTypes {}",
                 filter.getSupertypes());