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/10/20 06:41:53 UTC

svn commit: r1633032 - in /jackrabbit/oak/trunk/oak-lucene/src: main/java/org/apache/jackrabbit/oak/plugins/index/lucene/ test/java/org/apache/jackrabbit/oak/plugins/index/lucene/

Author: chetanm
Date: Mon Oct 20 04:41:53 2014
New Revision: 1633032

URL: http://svn.apache.org/r1633032
Log:
OAK-2005 - Use separate Lucene index for performing property related queries

-- Consolidate  the property definitions under  `properties` node.
-- Changed the property name for defining the type to `type` from `propertyType`

Modified:
    jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexDefinition.java
    jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexConstants.java
    jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexDefinitionTest.java
    jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LucenePropertyIndexTest.java

Modified: jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexDefinition.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexDefinition.java?rev=1633032&r1=1633031&r2=1633032&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexDefinition.java (original)
+++ jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexDefinition.java Mon Oct 20 04:41:53 2014
@@ -106,9 +106,10 @@ public class IndexDefinition {
         this.storageEnabled = this.fullTextEnabled && getOptionalValue(defn, EXPERIMENTAL_STORAGE, true);
 
         Map<String, PropertyDefinition> propDefns = Maps.newHashMap();
+        NodeBuilder propNode = defn.getChildNode(LuceneIndexConstants.PROP_NODE);
         for(String propName : Iterables.concat(includes, orderedProps)){
-            if(defn.hasChildNode(propName)){
-                propDefns.put(propName, new PropertyDefinition(this, propName, defn.child(propName)));
+            if(propNode.hasChildNode(propName)){
+                propDefns.put(propName, new PropertyDefinition(this, propName, propNode.child(propName)));
             }
         }
         this.propDefns = ImmutableMap.copyOf(propDefns);

Modified: jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexConstants.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexConstants.java?rev=1633032&r1=1633031&r2=1633032&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexConstants.java (original)
+++ jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexConstants.java Mon Oct 20 04:41:53 2014
@@ -71,7 +71,7 @@ public interface LuceneIndexConstants {
      * under the given index definition. Refer to {@link javax.jcr.PropertyType}
      * contants for the possible values
      */
-    String PROP_TYPE = "propertyType";
+    String PROP_TYPE = "type";
 
     /**
      * Defines properties which would be used for ordering. If range queries are to
@@ -95,4 +95,9 @@ public interface LuceneIndexConstants {
      * Name of the codec to be used for indexing
      */
     String CODEC_NAME = "codec";
+
+    /**
+     * Child node name under which property details are provided
+     */
+    String PROP_NODE = "properties";
 }

Modified: jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexDefinitionTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexDefinitionTest.java?rev=1633032&r1=1633031&r2=1633032&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexDefinitionTest.java (original)
+++ jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexDefinitionTest.java Mon Oct 20 04:41:53 2014
@@ -31,6 +31,7 @@ import static javax.jcr.PropertyType.TYP
 import static org.apache.jackrabbit.oak.api.Type.STRINGS;
 import static org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexConstants.INCLUDE_PROPERTY_NAMES;
 import static org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexConstants.INCLUDE_PROPERTY_TYPES;
+import static org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexConstants.PROP_NODE;
 import static org.apache.jackrabbit.oak.plugins.memory.PropertyStates.createProperty;
 import static org.apache.jackrabbit.oak.plugins.nodetype.write.InitialContent.INITIAL_CONTENT;
 import static org.junit.Assert.assertEquals;
@@ -80,7 +81,7 @@ public class IndexDefinitionTest {
 
     @Test
     public void propertyDefinition() throws Exception{
-        builder.child("foo").setProperty(LuceneIndexConstants.PROP_TYPE, PropertyType.TYPENAME_DATE);
+        builder.child(PROP_NODE).child("foo").setProperty(LuceneIndexConstants.PROP_TYPE, PropertyType.TYPENAME_DATE);
         builder.setProperty(createProperty(INCLUDE_PROPERTY_NAMES, of("foo" , "bar"), STRINGS));
         IndexDefinition defn = new IndexDefinition(builder);
 

Modified: jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LucenePropertyIndexTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LucenePropertyIndexTest.java?rev=1633032&r1=1633031&r2=1633032&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LucenePropertyIndexTest.java (original)
+++ jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LucenePropertyIndexTest.java Mon Oct 20 04:41:53 2014
@@ -56,6 +56,7 @@ import static org.apache.jackrabbit.oak.
 import static org.apache.jackrabbit.oak.plugins.index.IndexConstants.TYPE_PROPERTY_NAME;
 import static org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexConstants.INCLUDE_PROPERTY_NAMES;
 import static org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexConstants.ORDERED_PROP_NAMES;
+import static org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexConstants.PROP_NODE;
 import static org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexEditorTest.createCal;
 import static org.apache.jackrabbit.oak.plugins.index.property.OrderedIndex.OrderDirection;
 import static org.apache.jackrabbit.oak.plugins.memory.PropertyStates.createProperty;
@@ -112,7 +113,7 @@ public class LucenePropertyIndexTest ext
     @Test
     public void rangeQueriesWithLong() throws Exception {
         Tree idx = createIndex("test1", of("propa", "propb"));
-        Tree propIdx = idx.addChild("propa");
+        Tree propIdx = idx.addChild(PROP_NODE).addChild("propa");
         propIdx.setProperty(LuceneIndexConstants.PROP_TYPE, PropertyType.TYPENAME_LONG);
         root.commit();
 
@@ -139,7 +140,7 @@ public class LucenePropertyIndexTest ext
     @Test
     public void rangeQueriesWithDouble() throws Exception {
         Tree idx = createIndex("test1", of("propa", "propb"));
-        Tree propIdx = idx.addChild("propa");
+        Tree propIdx = idx.addChild(PROP_NODE).addChild("propa");
         propIdx.setProperty(LuceneIndexConstants.PROP_TYPE, PropertyType.TYPENAME_DOUBLE);
         root.commit();
 
@@ -161,7 +162,7 @@ public class LucenePropertyIndexTest ext
     @Test
     public void rangeQueriesWithString() throws Exception {
         Tree idx = createIndex("test1", of("propa", "propb"));
-        idx.addChild("propa");
+        idx.addChild(PROP_NODE).addChild("propa");
         root.commit();
 
         Tree test = root.getTree("/").addChild("test");
@@ -187,7 +188,7 @@ public class LucenePropertyIndexTest ext
     @Test
     public void rangeQueriesWithDate() throws Exception {
         Tree idx = createIndex("test1", of("propa", "propb"));
-        Tree propIdx = idx.addChild("propa");
+        Tree propIdx = idx.addChild(PROP_NODE).addChild("propa");
         propIdx.setProperty(LuceneIndexConstants.PROP_TYPE, PropertyType.TYPENAME_DATE);
         root.commit();
 
@@ -209,7 +210,7 @@ public class LucenePropertyIndexTest ext
     @Test
     public void likeQueriesWithString() throws Exception {
         Tree idx = createIndex("test1", of("propa", "propb"));
-        idx.addChild("propa");
+        idx.addChild(PROP_NODE).addChild("propa");
         root.commit();
 
         Tree test = root.getTree("/").addChild("test");
@@ -225,7 +226,7 @@ public class LucenePropertyIndexTest ext
     @Test
     public void nativeQueries() throws Exception {
         Tree idx = createIndex("test1", of("propa", "propb"));
-        idx.addChild("propa");
+        idx.addChild(PROP_NODE).addChild("propa");
         idx.setProperty(LuceneIndexConstants.FUNC_NAME, "foo");
         root.commit();
 
@@ -243,7 +244,7 @@ public class LucenePropertyIndexTest ext
     public void indexDefinitionBelowRoot() throws Exception {
         Tree parent = root.getTree("/").addChild("test");
         Tree idx = createIndex(parent, "test1", of("propa", "propb"));
-        idx.addChild("propa");
+        idx.addChild(PROP_NODE).addChild("propa");
         root.commit();
 
         Tree test = parent.addChild("test2");
@@ -257,7 +258,7 @@ public class LucenePropertyIndexTest ext
     @Test
     public void sortQueriesWithLong() throws Exception {
         Tree idx = createIndex("test1", of("foo", "bar"));
-        Tree propIdx = idx.addChild("foo");
+        Tree propIdx = idx.addChild(PROP_NODE).addChild("foo");
         propIdx.setProperty(LuceneIndexConstants.PROP_TYPE, PropertyType.TYPENAME_LONG);
         root.commit();
 
@@ -269,7 +270,7 @@ public class LucenePropertyIndexTest ext
         Tree idx = createIndex("test1", of("foo", "bar"));
         idx.setProperty(createProperty(INCLUDE_PROPERTY_NAMES, of("bar"), STRINGS));
         idx.setProperty(createProperty(ORDERED_PROP_NAMES, of("foo"), STRINGS));
-        Tree propIdx = idx.addChild("foo");
+        Tree propIdx = idx.addChild(PROP_NODE).addChild("foo");
         propIdx.setProperty(LuceneIndexConstants.PROP_TYPE, PropertyType.TYPENAME_LONG);
         root.commit();
 
@@ -295,7 +296,7 @@ public class LucenePropertyIndexTest ext
     @Test
     public void sortQueriesWithDouble() throws Exception {
         Tree idx = createIndex("test1", of("foo", "bar"));
-        Tree propIdx = idx.addChild("foo");
+        Tree propIdx = idx.addChild(PROP_NODE).addChild("foo");
         propIdx.setProperty(LuceneIndexConstants.PROP_TYPE, PropertyType.TYPENAME_DOUBLE);
         root.commit();
 
@@ -307,7 +308,7 @@ public class LucenePropertyIndexTest ext
         Tree idx = createIndex("test1", of("foo", "bar"));
         idx.setProperty(createProperty(INCLUDE_PROPERTY_NAMES, of("bar"), STRINGS));
         idx.setProperty(createProperty(ORDERED_PROP_NAMES, of("foo"), STRINGS));
-        Tree propIdx = idx.addChild("foo");
+        Tree propIdx = idx.addChild(PROP_NODE).addChild("foo");
         propIdx.setProperty(LuceneIndexConstants.PROP_TYPE, PropertyType.TYPENAME_DOUBLE);
         root.commit();
 
@@ -333,7 +334,7 @@ public class LucenePropertyIndexTest ext
     @Test
     public void sortQueriesWithString() throws Exception {
         Tree idx = createIndex("test1", of("foo", "bar"));
-        idx.addChild("foo");
+        idx.addChild(PROP_NODE).addChild("foo");
         root.commit();
 
         assertSortedString();
@@ -344,7 +345,7 @@ public class LucenePropertyIndexTest ext
         Tree idx = createIndex("test1", of("foo", "bar"));
         idx.setProperty(createProperty(INCLUDE_PROPERTY_NAMES, of("bar"), STRINGS));
         idx.setProperty(createProperty(ORDERED_PROP_NAMES, of("foo"), STRINGS));
-        idx.addChild("foo");
+        idx.addChild(PROP_NODE).addChild("foo");
         root.commit();
 
         assertSortedString();
@@ -369,7 +370,7 @@ public class LucenePropertyIndexTest ext
     @Test
     public void sortQueriesWithDate() throws Exception {
         Tree idx = createIndex("test1", of("foo", "bar"));
-        Tree propIdx = idx.addChild("foo");
+        Tree propIdx = idx.addChild(PROP_NODE).addChild("foo");
         propIdx.setProperty(LuceneIndexConstants.PROP_TYPE, PropertyType.TYPENAME_DATE);
         root.commit();
 
@@ -381,7 +382,7 @@ public class LucenePropertyIndexTest ext
         Tree idx = createIndex("test1", of("foo", "bar"));
         idx.setProperty(createProperty(INCLUDE_PROPERTY_NAMES, of("bar"), STRINGS));
         idx.setProperty(createProperty(ORDERED_PROP_NAMES, of("foo"), STRINGS));
-        Tree propIdx = idx.addChild("foo");
+        Tree propIdx = idx.addChild(PROP_NODE).addChild("foo");
         propIdx.setProperty(LuceneIndexConstants.PROP_TYPE, PropertyType.TYPENAME_DATE);
         root.commit();
 
@@ -407,7 +408,7 @@ public class LucenePropertyIndexTest ext
     @Test
     public void sortQueriesWithStringAndLong() throws Exception {
         Tree idx = createIndex("test1", of("foo", "bar", "baz"));
-        Tree propIdx = idx.addChild("baz");
+        Tree propIdx = idx.addChild(PROP_NODE).addChild("baz");
         propIdx.setProperty(LuceneIndexConstants.PROP_TYPE, PropertyType.TYPENAME_LONG);
         root.commit();