Author: chetanm
Date: Thu Sep 15 07:19:01 2016
New Revision: 1760859

URL: http://svn.apache.org/viewvc?rev=1760859&view=rev
Log:
OAK-4412 - Lucene hybrid index

Refactor to rename the method to have NRT  (for near real time indexing). This 
is required to distinguish it from later support for sync indexing where Lucene 
documents would be synchronously added to index and reader refreshed instead of 
adding them to queue

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/hybrid/LocalIndexObserver.java
    
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/LocalIndexWriterFactory.java
    
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/LuceneDocumentHolder.java
    
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/NRTIndexFactory.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/hybrid/LocalIndexObserverTest.java
    
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/LocalIndexWriterFactoryTest.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=1760859&r1=1760858&r2=1760859&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 Sep 15 07:19:01 2016
@@ -230,7 +230,7 @@ public final class IndexDefinition imple
 
     private final String indexPath;
 
-    private final boolean sync;
+    private final boolean nrt;
 
     @Nullable
     private final String uid;
@@ -304,7 +304,7 @@ public final class IndexDefinition imple
         this.secureFacets = defn.hasChildNode(FACETS) && 
getOptionalValue(defn.getChildNode(FACETS), PROP_SECURE_FACETS, true);
         this.suggestEnabled = evaluateSuggestionEnabled();
         this.spellcheckEnabled = evaluateSpellcheckEnabled();
-        this.sync = supportsSyncIndexing(defn);
+        this.nrt = supportsNRTIndexing(defn);
     }
 
     public NodeState getDefinitionNodeState() {
@@ -436,8 +436,8 @@ public final class IndexDefinition imple
         return uid;
     }
 
-    public boolean isSync() {
-        return sync;
+    public boolean isNRTIndexingEnabled() {
+        return nrt;
     }
 
     @Override
@@ -1572,7 +1572,7 @@ public final class IndexDefinition imple
         return version == IndexFormatVersion.V1 ?  1.5 : 1.0;
     }
 
-    private static boolean supportsSyncIndexing(NodeState defn) {
+    private static boolean supportsNRTIndexing(NodeState defn) {
         return supportsSyncIndexing(new ReadOnlyBuilder(defn));
     }
 

Modified: 
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/LocalIndexObserver.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/LocalIndexObserver.java?rev=1760859&r1=1760858&r2=1760859&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/LocalIndexObserver.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/LocalIndexObserver.java
 Thu Sep 15 07:19:01 2016
@@ -64,7 +64,7 @@ public class LocalIndexObserver implemen
         }
 
         int addedCount = 0, droppedCount = 0;
-        for (LuceneDoc doc : holder.getAsyncIndexedDocs()){
+        for (LuceneDoc doc : holder.getNRTIndexedDocs()){
             if (docQueue.add(doc)) {
                 addedCount++;
             } else {

Modified: 
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/LocalIndexWriterFactory.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/LocalIndexWriterFactory.java?rev=1760859&r1=1760858&r2=1760859&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/LocalIndexWriterFactory.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/LocalIndexWriterFactory.java
 Thu Sep 15 07:19:01 2016
@@ -91,7 +91,7 @@ public class LocalIndexWriterFactory imp
 
         private void addLuceneDoc(LuceneDoc luceneDoc) {
             if (docList == null){
-                docList = 
getDocumentHolder().getAsyncIndexedDocList(indexingContext.getIndexPath());
+                docList = 
getDocumentHolder().getNRTIndexedDocList(indexingContext.getIndexPath());
             }
             //TODO [hybrid] checks about the size. If too many drop
             //However for truly sync case hold on

Modified: 
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/LuceneDocumentHolder.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/LuceneDocumentHolder.java?rev=1760859&r1=1760858&r2=1760859&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/LuceneDocumentHolder.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/LuceneDocumentHolder.java
 Thu Sep 15 07:19:01 2016
@@ -27,13 +27,13 @@ import com.google.common.collect.ListMul
 class LuceneDocumentHolder {
     public static final String NAME = "oak.lucene.documentHolder";
 
-    private final ListMultimap<String, LuceneDoc> asyncList = 
ArrayListMultimap.create();
+    private final ListMultimap<String, LuceneDoc> nrtIndexedList = 
ArrayListMultimap.create();
 
-    public List<LuceneDoc> getAsyncIndexedDocList(String indexPath) {
-        return asyncList.get(indexPath);
+    public List<LuceneDoc> getNRTIndexedDocList(String indexPath) {
+        return nrtIndexedList.get(indexPath);
     }
 
-    public Iterable<LuceneDoc> getAsyncIndexedDocs(){
-        return asyncList.values();
+    public Iterable<LuceneDoc> getNRTIndexedDocs(){
+        return nrtIndexedList.values();
     }
 }

Modified: 
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/NRTIndexFactory.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/NRTIndexFactory.java?rev=1760859&r1=1760858&r2=1760859&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/NRTIndexFactory.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/NRTIndexFactory.java
 Thu Sep 15 07:19:01 2016
@@ -58,7 +58,7 @@ public class NRTIndexFactory implements
     // but still mark it synchronized for safety
     @CheckForNull
     public synchronized NRTIndex createIndex(IndexDefinition definition) {
-        if (!definition.isSync()){
+        if (!definition.isNRTIndexingEnabled()){
             return null;
         }
         String indexPath = definition.getIndexPathFromConfig();

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=1760859&r1=1760858&r2=1760859&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 Sep 15 07:19:01 2016
@@ -77,7 +77,7 @@ public class IndexDefinitionTest {
     public void defaultConfig() throws Exception{
         IndexDefinition idxDefn = new IndexDefinition(root, 
builder.getNodeState());
         assertTrue(idxDefn.saveDirListing());
-        assertFalse(idxDefn.isSync());
+        assertFalse(idxDefn.isNRTIndexingEnabled());
     }
 
     @Test
@@ -871,7 +871,7 @@ public class IndexDefinitionTest {
     public void sync() throws Exception{
         builder.setProperty(createProperty(IndexConstants.ASYNC_PROPERTY_NAME, 
of("sync" , "async"), STRINGS));
         IndexDefinition idxDefn = new IndexDefinition(root, 
builder.getNodeState());
-        assertTrue(idxDefn.isSync());
+        assertTrue(idxDefn.isNRTIndexingEnabled());
     }
 
     //TODO indexesAllNodesOfMatchingType - with nullCheckEnabled

Modified: 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/LocalIndexObserverTest.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/LocalIndexObserverTest.java?rev=1760859&r1=1760858&r2=1760859&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/LocalIndexObserverTest.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/LocalIndexObserverTest.java
 Thu Sep 15 07:19:01 2016
@@ -72,7 +72,7 @@ public class LocalIndexObserverTest {
         CommitContext cc = (CommitContext) 
info.getInfo().get(CommitContext.NAME);
 
         LuceneDocumentHolder holder = new LuceneDocumentHolder();
-        holder.getAsyncIndexedDocList("foo").add(LuceneDoc.forDelete("foo", 
"bar"));
+        holder.getNRTIndexedDocList("foo").add(LuceneDoc.forDelete("foo", 
"bar"));
 
         cc.set(LuceneDocumentHolder.NAME, holder);
 

Modified: 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/LocalIndexWriterFactoryTest.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/LocalIndexWriterFactoryTest.java?rev=1760859&r1=1760858&r2=1760859&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/LocalIndexWriterFactoryTest.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/LocalIndexWriterFactoryTest.java
 Thu Sep 15 07:19:01 2016
@@ -114,7 +114,7 @@ public class LocalIndexWriterFactoryTest
         assertNotNull(holder);
 
         //2 add none for delete
-        assertEquals(2, 
holder.getAsyncIndexedDocList("/oak:index/fooIndex").size());
+        assertEquals(2, 
holder.getNRTIndexedDocList("/oak:index/fooIndex").size());
     }
 
     @Test
@@ -131,10 +131,10 @@ public class LocalIndexWriterFactoryTest
         assertNotNull(holder);
 
         //1 add  - bar
-        assertEquals(1, 
holder.getAsyncIndexedDocList("/oak:index/fooIndex").size());
+        assertEquals(1, 
holder.getNRTIndexedDocList("/oak:index/fooIndex").size());
 
         //1 add  - bar
-        assertEquals(1, 
holder.getAsyncIndexedDocList("/oak:index/barIndex").size());
+        assertEquals(1, 
holder.getNRTIndexedDocList("/oak:index/barIndex").size());
 
     }
 


Reply via email to