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/11/20 12:29:03 UTC
svn commit: r1640722 - 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: Thu Nov 20 11:29:02 2014
New Revision: 1640722
URL: http://svn.apache.org/r1640722
Log:
OAK-2272 - Compatibility support for pre index rule configuration
Add a 'compatVersion' property to force usage of specific index format version. This is done to ensure that current test work untill OAK-2278 is done
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
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=1640722&r1=1640721&r2=1640722&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 Thu Nov 20 11:29:02 2014
@@ -974,6 +974,10 @@ class IndexDefinition {
return IndexFormatVersion.getCurrent();
}
+ if (defn.hasProperty(LuceneIndexConstants.COMPAT_MODE)){
+ return IndexFormatVersion.getVersion((int)defn.getLong(LuceneIndexConstants.COMPAT_MODE));
+ }
+
if (defn.hasProperty(INDEX_VERSION)){
return IndexFormatVersion.getVersion((int)defn.getLong(INDEX_VERSION));
}
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=1640722&r1=1640721&r2=1640722&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 Thu Nov 20 11:29:02 2014
@@ -128,4 +128,10 @@ public interface LuceneIndexConstants {
String RULE_INHERITED = "inherited";
String PROP_ORDERED = "ordered";
+
+ /**
+ * Integer property indicating that LuceneIndex should be
+ * used in compat mode to specific version
+ */
+ String COMPAT_MODE = "compatVersion";
}
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=1640722&r1=1640721&r2=1640722&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 Thu Nov 20 11:29:02 2014
@@ -367,6 +367,16 @@ public class IndexDefinitionTest {
}
@Test
+ public void versionFreshCompateMode() throws Exception{
+ NodeBuilder defnb = newLuceneIndexDefinition(builder.child(INDEX_DEFINITIONS_NAME),
+ "lucene", of(TYPENAME_STRING));
+ defnb.setProperty(LuceneIndexConstants.COMPAT_MODE, IndexFormatVersion.V1.getVersion());
+
+ IndexDefinition defn = new IndexDefinition(root, defnb.getNodeState());
+ assertEquals(IndexFormatVersion.V1, defn.getVersion());
+ }
+
+ @Test
public void formatUpdate() throws Exception{
NodeBuilder defnb = newLuceneIndexDefinition(builder.child(INDEX_DEFINITIONS_NAME),
"lucene", of(TYPENAME_STRING), of("foo"), "async");