Author: chetanm
Date: Tue Dec  6 10:32:40 2016
New Revision: 1772861

URL: http://svn.apache.org/viewvc?rev=1772861&view=rev
Log:
OAK-5218 - Enable use of hybrid index before first async indexing is done

-- IndexNode would now be returned when no persisted index is present but index 
is enabled for NRT or Sync indexing
-- For fresh index uniqueid is set to 0
-- SuggestHelper would return empty list if suggestore instance is null

Added:
    
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexNodeTest.java
   (with props)
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/IndexNode.java
    
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/SuggestHelper.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/MultiplexingLucenePropertyIndexTest.java
    
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/TestUtil.java
    
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/HybridIndexTest.java
    
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/reader/DefaultIndexReaderFactoryTest.java
    
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/MultiplexingIndexWriterTest.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=1772861&r1=1772860&r2=1772861&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
 Tue Dec  6 10:32:40 2016
@@ -59,6 +59,7 @@ import org.apache.jackrabbit.oak.spi.que
 import org.apache.jackrabbit.oak.spi.state.ChildNodeEntry;
 import org.apache.jackrabbit.oak.spi.state.NodeBuilder;
 import org.apache.jackrabbit.oak.spi.state.NodeState;
+import org.apache.jackrabbit.oak.spi.state.NodeStateUtils;
 import org.apache.jackrabbit.oak.spi.state.ReadOnlyBuilder;
 import org.apache.jackrabbit.oak.util.TreeUtil;
 import org.apache.lucene.analysis.Analyzer;
@@ -252,6 +253,11 @@ public final class IndexDefinition imple
     }
 
     public static class Builder {
+        /**
+         * Default unique id used when no existing uid is defined
+         * and index is not populated
+         */
+        private static final String DEFAULT_UID = "0";
         private final NodeState root;
         private final NodeState defn;
         private String indexPath;
@@ -284,6 +290,9 @@ public final class IndexDefinition imple
             }
             if (uid == null){
                 uid = determineUniqueId(defn);
+                if (uid == null && !IndexDefinition.hasPersistedIndex(defn)){
+                    uid = DEFAULT_UID;
+                }
             }
             return new IndexDefinition(root, defn, version, uid, 
checkNotNull(indexPath));
         }
@@ -504,6 +513,20 @@ public final class IndexDefinition imple
         return syncIndexMode;
     }
 
+    /**
+     * Check if the index definition is fresh of some index has happened
+     *
+     * @param definition nodestate for Index Definition
+     * @return true if index has some indexed content
+     */
+    public static boolean hasPersistedIndex(NodeState definition){
+        for (String rm : definition.getChildNodeNames()) {
+            if (NodeStateUtils.isHidden(rm)) {
+                return true;
+            }
+        }
+        return false;
+    }
 
     @Override
     public String toString() {

Modified: 
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexNode.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexNode.java?rev=1772861&r1=1772860&r2=1772861&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexNode.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexNode.java
 Tue Dec  6 10:32:40 2016
@@ -56,7 +56,7 @@ public class IndexNode {
         IndexDefinition definition = new IndexDefinition(root, defnNodeState, 
indexPath);
         List<LuceneIndexReader> readers = 
readerFactory.createReaders(definition, defnNodeState, indexPath);
         NRTIndex nrtIndex = nrtFactory != null ? 
nrtFactory.createIndex(definition) : null;
-        if (!readers.isEmpty()){
+        if (!readers.isEmpty() || (nrtIndex != null && 
!IndexDefinition.hasPersistedIndex(defnNodeState))){
             return new IndexNode(PathUtils.getName(indexPath), definition, 
readers, nrtIndex);
         }
         return null;
@@ -93,7 +93,7 @@ public class IndexNode {
 
     IndexNode(String name, IndexDefinition definition, List<LuceneIndexReader> 
readers, @Nullable NRTIndex nrtIndex)
             throws IOException {
-        checkArgument(!readers.isEmpty());
+        checkArgument(!readers.isEmpty() || nrtIndex != null);
         this.name = name;
         this.definition = definition;
         this.readers = readers;
@@ -115,12 +115,14 @@ public class IndexNode {
         return indexSearcher;
     }
 
+    @CheckForNull
     Directory getSuggestDirectory() {
-        return getDefaultReader().getSuggestDirectory();
+        return readers.isEmpty() ? null : 
getDefaultReader().getSuggestDirectory();
     }
 
+    @CheckForNull
     AnalyzingInfixSuggester getLookup() {
-        return getDefaultReader().getLookup();
+        return readers.isEmpty() ? null : getDefaultReader().getLookup();
     }
 
     boolean acquire() {
@@ -188,6 +190,9 @@ public class IndexNode {
         if (readers.size() == 1 && nrtReaders.isEmpty()){
             return readers.get(0).getReader();
         }
+        if (nrtReaders.size() == 1 && readers.isEmpty()){
+            return nrtReaders.get(0).getReader();
+        }
         IndexReader[] readerArr = new IndexReader[readers.size() + 
nrtReaders.size()];
         int i = 0;
         for (LuceneIndexReader r : Iterables.concat(readers, nrtReaders)){

Modified: 
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/SuggestHelper.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/SuggestHelper.java?rev=1772861&r1=1772860&r2=1772861&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/SuggestHelper.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/SuggestHelper.java
 Tue Dec  6 10:32:40 2016
@@ -24,6 +24,8 @@ import java.io.Reader;
 import java.util.Collections;
 import java.util.List;
 
+import javax.annotation.Nullable;
+
 import com.google.common.io.Files;
 import org.apache.commons.io.FileUtils;
 import org.apache.jackrabbit.oak.plugins.index.lucene.FieldNames;
@@ -80,10 +82,9 @@ public class SuggestHelper {
         }
     }
 
-    public static List<Lookup.LookupResult> 
getSuggestions(AnalyzingInfixSuggester suggester, SuggestQuery suggestQuery) {
+    public static List<Lookup.LookupResult> 
getSuggestions(AnalyzingInfixSuggester suggester, @Nullable SuggestQuery 
suggestQuery) {
         try {
-            long count = suggester.getCount();
-            if (count > 0) {
+            if (suggester != null && suggester.getCount() > 0) {
                 return suggester.lookup(suggestQuery.getText(), 10, true, 
false);
             } else {
                 return Collections.emptyList();

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=1772861&r1=1772860&r2=1772861&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
 Tue Dec  6 10:32:40 2016
@@ -876,6 +876,23 @@ public class IndexDefinitionTest {
         assertTrue(idxDefn.isSyncIndexingEnabled());
     }
 
+    @Test
+    public void hasPersistedIndex() throws Exception{
+        assertFalse(IndexDefinition.hasPersistedIndex(builder.getNodeState()));
+        builder.child(":status");
+        assertTrue(IndexDefinition.hasPersistedIndex(builder.getNodeState()));
+    }
+
+    @Test
+    public void uniqueIdForFreshIndex() throws Exception{
+        IndexDefinition defn = IndexDefinition.newBuilder(root, 
builder.getNodeState()).indexPath("/foo").build();
+        assertEquals("0", defn.getUniqueId());
+
+        builder.child(":status");
+        defn = IndexDefinition.newBuilder(root, 
builder.getNodeState()).indexPath("/foo").build();
+        assertNull(defn.getUniqueId());
+    }
+
     //TODO indexesAllNodesOfMatchingType - with nullCheckEnabled
 
     private static IndexingRule getRule(IndexDefinition defn, String typeName){

Added: 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexNodeTest.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexNodeTest.java?rev=1772861&view=auto
==============================================================================
--- 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexNodeTest.java
 (added)
+++ 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexNodeTest.java
 Tue Dec  6 10:32:40 2016
@@ -0,0 +1,106 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.jackrabbit.oak.plugins.index.lucene;
+
+import java.io.File;
+import java.io.IOException;
+
+import org.apache.jackrabbit.oak.plugins.index.lucene.hybrid.NRTIndexFactory;
+import 
org.apache.jackrabbit.oak.plugins.index.lucene.reader.DefaultIndexReaderFactory;
+import 
org.apache.jackrabbit.oak.plugins.index.lucene.reader.LuceneIndexReaderFactory;
+import 
org.apache.jackrabbit.oak.plugins.index.lucene.util.IndexDefinitionBuilder;
+import org.apache.jackrabbit.oak.spi.mount.Mounts;
+import org.apache.jackrabbit.oak.spi.state.NodeBuilder;
+import org.apache.jackrabbit.oak.spi.state.NodeState;
+import org.apache.lucene.index.Term;
+import org.apache.lucene.search.TermQuery;
+import org.apache.lucene.search.TopDocs;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.TemporaryFolder;
+
+import static 
com.google.common.util.concurrent.MoreExecutors.sameThreadExecutor;
+import static org.apache.jackrabbit.oak.plugins.index.lucene.FieldNames.PATH;
+import static org.apache.jackrabbit.oak.plugins.index.lucene.TestUtil.newDoc;
+import static 
org.apache.jackrabbit.oak.plugins.nodetype.write.InitialContent.INITIAL_CONTENT;
+import static org.junit.Assert.*;
+
+public class IndexNodeTest {
+    @Rule
+    public TemporaryFolder temporaryFolder = new TemporaryFolder(new 
File("target"));
+
+    private NodeState root = INITIAL_CONTENT;
+    private NodeBuilder builder = root.builder();
+
+    private IndexCopier indexCopier;
+    private NRTIndexFactory nrtFactory;
+    private LuceneIndexReaderFactory readerFactory;
+
+    @Before
+    public void setUp() throws IOException {
+        indexCopier = new IndexCopier(sameThreadExecutor(), 
temporaryFolder.getRoot());
+        nrtFactory = new NRTIndexFactory(indexCopier);
+        readerFactory = new 
DefaultIndexReaderFactory(Mounts.defaultMountInfoProvider(), indexCopier);
+        LuceneIndexEditorContext.configureUniqueId(builder);
+    }
+
+    @After
+    public void cleanup() throws IOException {
+        nrtFactory.close();
+        indexCopier.close();
+    }
+
+    @Test
+    public void nullIndexNode() throws Exception{
+        assertNull(IndexNode.open("/foo", root, builder.getNodeState(), 
readerFactory, null));
+        assertNull(IndexNode.open("/foo", root, builder.getNodeState(), 
readerFactory, nrtFactory));
+    }
+
+    @Test
+    public void nonNullIndex_OnlyNRT() throws Exception{
+        IndexNode node = IndexNode.open("/foo", root, createNRTIndex(), 
readerFactory, nrtFactory);
+        assertNotNull(node.getSearcher());
+        TopDocs docs = node.getSearcher().search(new TermQuery(new Term(PATH, 
"/content/en")), 100);
+        assertEquals(0, docs.totalHits);
+
+        node.getLocalWriter().updateDocument("/content/en", 
newDoc("/content/en"));
+        node.refreshReadersOnWriteIfRequired();
+
+        docs = node.getSearcher().search(new TermQuery(new Term(PATH, 
"/content/en")), 100);
+        assertEquals(1, docs.totalHits);
+    }
+
+    @Test
+    public void nullIndex_NonFreshIndex() throws Exception{
+        NodeBuilder builder = createNRTIndex().builder();
+        //Create a hidden node to indicate that its not a fresh index
+        builder.child(":status");
+        assertNull(IndexNode.open("/foo", root, builder.getNodeState(), 
readerFactory, nrtFactory));
+    }
+
+    private static NodeState createNRTIndex(){
+        IndexDefinitionBuilder idx = new IndexDefinitionBuilder();
+        idx.indexRule("nt:base").property("foo").propertyIndex();
+        idx.async("async", "sync");
+        return idx.build();
+    }
+}
\ No newline at end of file

Propchange: 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexNodeTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/MultiplexingLucenePropertyIndexTest.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/MultiplexingLucenePropertyIndexTest.java?rev=1772861&r1=1772860&r2=1772861&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/MultiplexingLucenePropertyIndexTest.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/MultiplexingLucenePropertyIndexTest.java
 Tue Dec  6 10:32:40 2016
@@ -79,7 +79,7 @@ import static org.apache.jackrabbit.oak.
 import static 
org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexConstants.PROP_NODE;
 import static 
org.apache.jackrabbit.oak.plugins.index.lucene.LucenePropertyIndexTest.createIndex;
 import static 
org.apache.jackrabbit.oak.plugins.index.lucene.util.LuceneIndexHelper.newLucenePropertyIndexDefinition;
-import static 
org.apache.jackrabbit.oak.plugins.index.lucene.writer.MultiplexingIndexWriterTest.newDoc;
+import static org.apache.jackrabbit.oak.plugins.index.lucene.TestUtil.newDoc;
 import static 
org.apache.jackrabbit.oak.plugins.memory.EmptyNodeState.EMPTY_NODE;
 import static 
org.apache.jackrabbit.oak.plugins.memory.PropertyStates.createProperty;
 import static 
org.apache.jackrabbit.oak.plugins.nodetype.write.InitialContent.INITIAL_CONTENT;

Modified: 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/TestUtil.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/TestUtil.java?rev=1772861&r1=1772860&r2=1772861&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/TestUtil.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/TestUtil.java
 Tue Dec  6 10:32:40 2016
@@ -53,6 +53,7 @@ import org.apache.jackrabbit.oak.spi.sta
 import org.apache.jackrabbit.oak.spi.state.NodeBuilder;
 import org.apache.jackrabbit.oak.spi.state.NodeState;
 import org.apache.jackrabbit.oak.spi.state.NodeStore;
+import org.apache.lucene.document.Document;
 
 import static com.google.common.base.Preconditions.checkNotNull;
 import static com.google.common.collect.ImmutableSet.of;
@@ -62,6 +63,7 @@ import static org.apache.jackrabbit.oak.
 import static 
org.apache.jackrabbit.oak.plugins.index.IndexConstants.INDEX_DEFINITIONS_NODE_TYPE;
 import static 
org.apache.jackrabbit.oak.plugins.index.IndexConstants.REINDEX_PROPERTY_NAME;
 import static 
org.apache.jackrabbit.oak.plugins.index.IndexConstants.TYPE_PROPERTY_NAME;
+import static 
org.apache.jackrabbit.oak.plugins.index.lucene.FieldFactory.newPathField;
 import static 
org.apache.jackrabbit.oak.plugins.memory.PropertyStates.createProperty;
 
 public class TestUtil {
@@ -152,6 +154,12 @@ public class TestUtil {
         return nb;
     }
 
+    public static Document newDoc(String path){
+        Document doc = new Document();
+        doc.add(newPathField(path));
+        return doc;
+    }
+
     static class AggregatorBuilder {
         private final Tree aggs;
 

Modified: 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/HybridIndexTest.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/HybridIndexTest.java?rev=1772861&r1=1772860&r2=1772861&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/HybridIndexTest.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/HybridIndexTest.java
 Tue Dec  6 10:32:40 2016
@@ -213,20 +213,29 @@ public class HybridIndexTest extends Abs
         assertQuery("select [jcr:path] from [nt:base] where [foo] = 'bar'", 
of("/a", "/b"));
     }
 
-    //@Test
+    @Test
     public void usageBeforeFirstIndex() throws Exception{
-        IndexDefinitionBuilder idxb = new IndexDefinitionBuilder();
-        idxb.async("sync", "async");
-        idxb.indexRule("nt:base").property("foo").propertyIndex();
-        Tree idx = root.getTree("/oak:index").addChild("hybridtest");
-        idxb.build(idx);
-
+        String idxName = "hybridtest";
+        Tree idx = createIndex(root.getTree("/"), idxName, 
Collections.singleton("foo"));
+        TestUtil.enableIndexingMode(idx, IndexingMode.SYNC);
         root.commit();
 
         createPath("/a").setProperty("foo", "bar");
         root.commit();
         setTraversalEnabled(false);
         assertQuery("select [jcr:path] from [nt:base] where [foo] = 'bar'", 
of("/a"));
+
+        //Add new node. This should get immediately reelected as its a sync 
index
+        createPath("/b").setProperty("foo", "bar");
+        root.commit();
+        assertQuery("select [jcr:path] from [nt:base] where [foo] = 'bar'", 
of("/a", "/b"));
+
+        runAsyncIndex();
+        assertQuery("select [jcr:path] from [nt:base] where [foo] = 'bar'", 
of("/a", "/b"));
+
+        createPath("/c").setProperty("foo", "bar");
+        root.commit();
+        assertQuery("select [jcr:path] from [nt:base] where [foo] = 'bar'", 
of("/a", "/b", "/c"));
     }
 
     private void runAsyncIndex() {

Modified: 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/reader/DefaultIndexReaderFactoryTest.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/reader/DefaultIndexReaderFactoryTest.java?rev=1772861&r1=1772860&r2=1772861&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/reader/DefaultIndexReaderFactoryTest.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/reader/DefaultIndexReaderFactoryTest.java
 Tue Dec  6 10:32:40 2016
@@ -43,7 +43,7 @@ import org.junit.Rule;
 import org.junit.Test;
 import org.junit.rules.TemporaryFolder;
 
-import static 
org.apache.jackrabbit.oak.plugins.index.lucene.writer.MultiplexingIndexWriterTest.newDoc;
+import static org.apache.jackrabbit.oak.plugins.index.lucene.TestUtil.newDoc;
 import static 
org.apache.jackrabbit.oak.plugins.memory.EmptyNodeState.EMPTY_NODE;
 import static 
org.apache.jackrabbit.oak.plugins.nodetype.write.InitialContent.INITIAL_CONTENT;
 import static org.junit.Assert.*;

Modified: 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/MultiplexingIndexWriterTest.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/MultiplexingIndexWriterTest.java?rev=1772861&r1=1772860&r2=1772861&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/MultiplexingIndexWriterTest.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/MultiplexingIndexWriterTest.java
 Tue Dec  6 10:32:40 2016
@@ -36,7 +36,6 @@ import org.apache.jackrabbit.oak.spi.mou
 import org.apache.jackrabbit.oak.spi.mount.Mounts;
 import org.apache.jackrabbit.oak.spi.state.NodeBuilder;
 import org.apache.jackrabbit.oak.spi.state.NodeState;
-import org.apache.lucene.document.Document;
 import org.apache.lucene.index.DirectoryReader;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.store.Directory;
@@ -45,7 +44,7 @@ import org.junit.Rule;
 import org.junit.Test;
 import org.junit.rules.TemporaryFolder;
 
-import static 
org.apache.jackrabbit.oak.plugins.index.lucene.FieldFactory.newPathField;
+import static org.apache.jackrabbit.oak.plugins.index.lucene.TestUtil.newDoc;
 import static 
org.apache.jackrabbit.oak.plugins.memory.EmptyNodeState.EMPTY_NODE;
 import static 
org.apache.jackrabbit.oak.plugins.nodetype.write.InitialContent.INITIAL_CONTENT;
 import static org.hamcrest.CoreMatchers.instanceOf;
@@ -217,9 +216,4 @@ public class MultiplexingIndexWriterTest
         return MultiplexersLucene.getIndexDirName(m);
     }
 
-    public static Document newDoc(String path){
-        Document doc = new Document();
-        doc.add(newPathField(path));
-        return doc;
-    }
 }


Reply via email to