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();