Author: chetanm
Date: Thu Dec  8 05:18:11 2016
New Revision: 1773180

URL: http://svn.apache.org/viewvc?rev=1773180&view=rev
Log:
OAK-4400 - Correlate index with the index definition used to build it

Moved the feature flag to IndexDefinition as its also to be used there

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/LuceneIndexEditorContext.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=1773180&r1=1773179&r2=1773180&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 Dec  8 05:18:11 2016
@@ -99,6 +99,16 @@ public final class IndexDefinition imple
 
     private static final Logger log = 
LoggerFactory.getLogger(IndexDefinition.class);
 
+    public static final boolean DISABLE_STORED_INDEX_DEFINITION =
+            Boolean.getBoolean("oak.lucene.disableStoredIndexDefinition");
+
+    static {
+        if (DISABLE_STORED_INDEX_DEFINITION){
+            log.info("Feature to ensure that index definition match the index 
state is set to be disabled. Change in " +
+                    "index definition would now effect query plans and might 
lead to inconsistent results");
+        }
+    }
+
     /**
      * Default number of seconds after which to delete actively. Default is 
-1, meaning disabled.
      * The plan is to use 3600 (1 hour) in the future.
@@ -1685,6 +1695,9 @@ public final class IndexDefinition imple
     }
 
     private static NodeState getIndexDefinitionState(NodeState defn) {
+        if (DISABLE_STORED_INDEX_DEFINITION){
+            return defn;
+        }
         NodeState storedState = defn.getChildNode(INDEX_DEFINITION_NODE);
         return storedState.exists() ? storedState : defn;
     }

Modified: 
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexEditorContext.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexEditorContext.java?rev=1773180&r1=1773179&r2=1773180&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexEditorContext.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexEditorContext.java
 Thu Dec  8 05:18:11 2016
@@ -58,15 +58,7 @@ public class LuceneIndexEditorContext {
     private static final PerfLogger PERF_LOGGER =
             new 
PerfLogger(LoggerFactory.getLogger(LuceneIndexEditorContext.class.getName() + 
".perf"));
 
-    private static final boolean disableStoredIndexDefinition =
-            Boolean.getBoolean("oak.lucene.disableStoredIndexDefinition");
 
-    static {
-        if (disableStoredIndexDefinition){
-            log.info("Feature to ensure that index definition match the index 
state is set to be disabled. Change in " +
-                    "index definition would now effect query plans and might 
lead to inconsistent results");
-        }
-    }
 
     private FacetsConfig facetsConfig;
 
@@ -201,7 +193,7 @@ public class LuceneIndexEditorContext {
         //as index definition does not get modified as part of IndexUpdate run 
in most case we rely on base state
         //For case where index definition is rewritten there we get fresh state
         NodeState defnState = indexDefnRewritten ? 
definitionBuilder.getNodeState() : definitionBuilder.getBaseState();
-        if (!disableStoredIndexDefinition) {
+        if (!IndexDefinition.DISABLE_STORED_INDEX_DEFINITION) {
             
definitionBuilder.setChildNode(IndexDefinition.INDEX_DEFINITION_NODE, 
NodeStateCloner.cloneVisibleState(defnState));
         }
         String uid = configureUniqueId(definitionBuilder);


Reply via email to