Modified: jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/DefaultIndexWriter.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/DefaultIndexWriter.java?rev=1841926&r1=1841925&r2=1841926&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/DefaultIndexWriter.java (original) +++ jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/DefaultIndexWriter.java Tue Sep 25 12:24:15 2018 @@ -27,9 +27,10 @@ import com.google.common.io.Closer; import org.apache.jackrabbit.oak.api.PropertyState; import org.apache.jackrabbit.oak.api.Type; import org.apache.jackrabbit.oak.commons.PerfLogger; -import org.apache.jackrabbit.oak.plugins.index.lucene.IndexDefinition; +import org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexDefinition; import org.apache.jackrabbit.oak.plugins.index.lucene.directory.DirectoryFactory; import org.apache.jackrabbit.oak.plugins.index.lucene.util.SuggestHelper; +import org.apache.jackrabbit.oak.plugins.index.search.IndexDefinition; import org.apache.jackrabbit.oak.spi.state.NodeBuilder; import org.apache.jackrabbit.util.ISO8601; import org.apache.lucene.analysis.Analyzer; @@ -53,7 +54,7 @@ class DefaultIndexWriter implements Luce private static final PerfLogger PERF_LOGGER = new PerfLogger(LoggerFactory.getLogger(LuceneIndexWriter.class.getName() + ".perf")); - private final IndexDefinition definition; + private final LuceneIndexDefinition definition; private final NodeBuilder definitionBuilder; private final DirectoryFactory directoryFactory; private final String dirName; @@ -65,7 +66,7 @@ class DefaultIndexWriter implements Luce private long genAtStart = -1; private boolean indexUpdated = false; - public DefaultIndexWriter(IndexDefinition definition, NodeBuilder definitionBuilder, + public DefaultIndexWriter(LuceneIndexDefinition definition, NodeBuilder definitionBuilder, DirectoryFactory directoryFactory, String dirName, String suggestDirName, boolean reindex, LuceneIndexWriterConfig writerConfig) { this.definition = definition;
Modified: jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/DefaultIndexWriterFactory.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/DefaultIndexWriterFactory.java?rev=1841926&r1=1841925&r2=1841926&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/DefaultIndexWriterFactory.java (original) +++ jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/DefaultIndexWriterFactory.java Tue Sep 25 12:24:15 2018 @@ -19,10 +19,13 @@ package org.apache.jackrabbit.oak.plugins.index.lucene.writer; - -import org.apache.jackrabbit.oak.plugins.index.lucene.IndexDefinition; +import com.google.common.base.Preconditions; import org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexConstants; +import org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexDefinition; +import org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexWriterFactory; import org.apache.jackrabbit.oak.plugins.index.lucene.directory.DirectoryFactory; +import org.apache.jackrabbit.oak.plugins.index.search.FulltextIndexConstants; +import org.apache.jackrabbit.oak.plugins.index.search.IndexDefinition; import org.apache.jackrabbit.oak.spi.mount.MountInfoProvider; import org.apache.jackrabbit.oak.spi.state.NodeBuilder; @@ -41,14 +44,20 @@ public class DefaultIndexWriterFactory i } @Override - public LuceneIndexWriter newInstance(IndexDefinition definition, + public LuceneIndexWriter newInstance(IndexDefinition def, NodeBuilder definitionBuilder, boolean reindex) { + Preconditions.checkArgument(def instanceof LuceneIndexDefinition, + "Expected {} but found {} for index definition", + LuceneIndexDefinition.class, def.getClass()); + + LuceneIndexDefinition definition = (LuceneIndexDefinition)def; + if (mountInfoProvider.hasNonDefaultMounts()){ return new MultiplexingIndexWriter(directoryFactory, mountInfoProvider, definition, definitionBuilder, reindex, writerConfig); } return new DefaultIndexWriter(definition, definitionBuilder, directoryFactory, - LuceneIndexConstants.INDEX_DATA_CHILD_NAME, - LuceneIndexConstants.SUGGEST_DATA_CHILD_NAME, reindex, writerConfig); + FulltextIndexConstants.INDEX_DATA_CHILD_NAME, + LuceneIndexConstants.SUGGEST_DATA_CHILD_NAME, reindex, writerConfig); } } Modified: jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/IndexWriterUtils.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/IndexWriterUtils.java?rev=1841926&r1=1841925&r2=1841926&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/IndexWriterUtils.java (original) +++ jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/IndexWriterUtils.java Tue Sep 25 12:24:15 2018 @@ -23,13 +23,13 @@ import java.util.HashMap; import java.util.List; import java.util.Map; - -import org.apache.jackrabbit.oak.plugins.index.lucene.FieldNames; -import org.apache.jackrabbit.oak.plugins.index.lucene.IndexDefinition; import org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexConstants; -import org.apache.jackrabbit.oak.plugins.index.lucene.PropertyDefinition; -import org.apache.jackrabbit.oak.plugins.index.lucene.util.fv.LSHAnalyzer; +import org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexDefinition; import org.apache.jackrabbit.oak.plugins.index.lucene.util.SuggestHelper; +import org.apache.jackrabbit.oak.plugins.index.lucene.util.fv.LSHAnalyzer; +import org.apache.jackrabbit.oak.plugins.index.search.FieldNames; +import org.apache.jackrabbit.oak.plugins.index.search.IndexDefinition; +import org.apache.jackrabbit.oak.plugins.index.search.PropertyDefinition; import org.apache.lucene.analysis.Analyzer; import org.apache.lucene.analysis.miscellaneous.PerFieldAnalyzerWrapper; import org.apache.lucene.analysis.shingle.ShingleAnalyzerWrapper; @@ -40,11 +40,11 @@ import static org.apache.jackrabbit.oak. public class IndexWriterUtils { - public static IndexWriterConfig getIndexWriterConfig(IndexDefinition definition, boolean remoteDir){ + public static IndexWriterConfig getIndexWriterConfig(LuceneIndexDefinition definition, boolean remoteDir){ return getIndexWriterConfig(definition, remoteDir, new LuceneIndexWriterConfig()); } - public static IndexWriterConfig getIndexWriterConfig(IndexDefinition definition, boolean remoteDir, + public static IndexWriterConfig getIndexWriterConfig(LuceneIndexDefinition definition, boolean remoteDir, LuceneIndexWriterConfig writerConfig) { // FIXME: Hack needed to make Lucene work in an OSGi environment Thread thread = Thread.currentThread(); Modified: jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/LuceneIndexWriter.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/LuceneIndexWriter.java?rev=1841926&r1=1841925&r2=1841926&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/LuceneIndexWriter.java (original) +++ jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/LuceneIndexWriter.java Tue Sep 25 12:24:15 2018 @@ -19,32 +19,8 @@ package org.apache.jackrabbit.oak.plugins.index.lucene.writer; -import java.io.IOException; - +import org.apache.jackrabbit.oak.plugins.index.search.spi.editor.FulltextIndexWriter; import org.apache.lucene.index.IndexableField; -public interface LuceneIndexWriter { - - /** - * Updates the Lucene document having given path - * - * @param path path of the NodeState which the Document represents - * @param doc updated document - */ - void updateDocument(String path, Iterable<? extends IndexableField> doc) throws IOException; - - /** - * Deletes Lucene Documents which are same or child of given path - * - * @param path path whose children need to be deleted - */ - void deleteDocuments(String path) throws IOException; - - /** - * Closes the underlying writer. - * - * @param timestamp timestamp to be used for recording at status in NodeBuilder - * @return true if index was updated or any write happened. - */ - boolean close(long timestamp) throws IOException; +public interface LuceneIndexWriter extends FulltextIndexWriter<Iterable<? extends IndexableField>> { } Modified: jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/MultiplexersLucene.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/MultiplexersLucene.java?rev=1841926&r1=1841925&r2=1841926&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/MultiplexersLucene.java (original) +++ jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/MultiplexersLucene.java Tue Sep 25 12:24:15 2018 @@ -20,9 +20,9 @@ package org.apache.jackrabbit.oak.plugins.index.lucene.writer; +import org.apache.jackrabbit.oak.plugins.index.search.FulltextIndexConstants; import org.apache.jackrabbit.oak.spi.mount.Mount; -import static org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexConstants.INDEX_DATA_CHILD_NAME; import static org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexConstants.SUGGEST_DATA_CHILD_NAME; public final class MultiplexersLucene { @@ -35,7 +35,7 @@ public final class MultiplexersLucene { public static String getIndexDirName(Mount mount) { if (mount.isDefault()){ - return INDEX_DATA_CHILD_NAME; + return FulltextIndexConstants.INDEX_DATA_CHILD_NAME; } String name = mount.getPathFragmentName(); return ":" + name + INDEX_DIR_SUFFIX; @@ -51,7 +51,7 @@ public final class MultiplexersLucene { */ public static boolean isIndexDirName(String name) { return name.endsWith(INDEX_DIR_SUFFIX) - || name.equals(INDEX_DATA_CHILD_NAME); + || name.equals(FulltextIndexConstants.INDEX_DATA_CHILD_NAME); } public static String getSuggestDirName(Mount mount) { Modified: jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/MultiplexingIndexWriter.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/MultiplexingIndexWriter.java?rev=1841926&r1=1841925&r2=1841926&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/MultiplexingIndexWriter.java (original) +++ jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/MultiplexingIndexWriter.java Tue Sep 25 12:24:15 2018 @@ -22,9 +22,8 @@ package org.apache.jackrabbit.oak.plugin import java.io.IOException; import java.util.Map; - import com.google.common.collect.Maps; -import org.apache.jackrabbit.oak.plugins.index.lucene.IndexDefinition; +import org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexDefinition; import org.apache.jackrabbit.oak.plugins.index.lucene.directory.DirectoryFactory; import org.apache.jackrabbit.oak.spi.mount.Mount; import org.apache.jackrabbit.oak.spi.mount.MountInfoProvider; @@ -34,7 +33,7 @@ import org.apache.lucene.index.Indexable class MultiplexingIndexWriter implements LuceneIndexWriter { private final MountInfoProvider mountInfoProvider; private final DirectoryFactory directoryFactory; - private final IndexDefinition definition; + private final LuceneIndexDefinition definition; private final NodeBuilder definitionBuilder; private final boolean reindex; private final LuceneIndexWriterConfig writerConfig; @@ -42,7 +41,7 @@ class MultiplexingIndexWriter implements private final Map<Mount, DefaultIndexWriter> writers = Maps.newHashMap(); public MultiplexingIndexWriter(DirectoryFactory directoryFactory, MountInfoProvider mountInfoProvider, - IndexDefinition definition, NodeBuilder definitionBuilder, + LuceneIndexDefinition definition, NodeBuilder definitionBuilder, boolean reindex, LuceneIndexWriterConfig writerConfig) { this.mountInfoProvider = mountInfoProvider; this.definition = definition; Modified: jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/jcr/AsyncConflictsIT.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/jcr/AsyncConflictsIT.java?rev=1841926&r1=1841925&r2=1841926&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/jcr/AsyncConflictsIT.java (original) +++ jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/jcr/AsyncConflictsIT.java Tue Sep 25 12:24:15 2018 @@ -42,7 +42,6 @@ import org.apache.jackrabbit.oak.plugins import org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexEditorProvider; import org.jetbrains.annotations.NotNull; import org.junit.BeforeClass; -import org.junit.Ignore; import org.junit.Test; import org.slf4j.Logger; import org.slf4j.LoggerFactory; Modified: jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/jcr/AtomicCounterIT.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/jcr/AtomicCounterIT.java?rev=1841926&r1=1841925&r2=1841926&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/jcr/AtomicCounterIT.java (original) +++ jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/jcr/AtomicCounterIT.java Tue Sep 25 12:24:15 2018 @@ -33,10 +33,10 @@ import org.apache.jackrabbit.oak.api.Roo import org.apache.jackrabbit.oak.api.Tree; import org.apache.jackrabbit.oak.plugins.document.DocumentMKBuilderProvider; import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore; -import org.apache.jackrabbit.oak.plugins.index.lucene.IndexDefinition; import org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexEditorProvider; import org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexProvider; import org.apache.jackrabbit.oak.plugins.index.lucene.hybrid.DocumentQueue; +import org.apache.jackrabbit.oak.plugins.index.search.IndexDefinition; import org.apache.jackrabbit.oak.spi.commit.CommitInfo; import org.apache.jackrabbit.oak.spi.commit.EmptyHook; import org.apache.jackrabbit.oak.spi.commit.Observer; Modified: jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/jcr/LuceneOakRepositoryStub.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/jcr/LuceneOakRepositoryStub.java?rev=1841926&r1=1841925&r2=1841926&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/jcr/LuceneOakRepositoryStub.java (original) +++ jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/jcr/LuceneOakRepositoryStub.java Tue Sep 25 12:24:15 2018 @@ -37,6 +37,7 @@ import org.apache.jackrabbit.oak.plugins import org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexEditorProvider; import org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexProvider; import org.apache.jackrabbit.oak.plugins.index.lucene.util.LuceneInitializerHelper; +import org.apache.jackrabbit.oak.plugins.index.search.FulltextIndexConstants; import org.apache.jackrabbit.oak.spi.commit.Observer; import org.apache.jackrabbit.oak.spi.query.QueryIndex; import org.apache.jackrabbit.oak.spi.query.QueryIndexProvider; @@ -85,19 +86,19 @@ public class LuceneOakRepositoryStub ext .setProperty(TYPE_PROPERTY_NAME, TYPE_LUCENE) .setProperty(REINDEX_PROPERTY_NAME, true) .setProperty(LuceneIndexConstants.TEST_MODE, true) - .setProperty(LuceneIndexConstants.EVALUATE_PATH_RESTRICTION, true); + .setProperty(FulltextIndexConstants.EVALUATE_PATH_RESTRICTION, true); index.child(LuceneIndexConstants.SUGGESTION_CONFIG) .setProperty(JCR_PRIMARYTYPE, "nt:unstructured", NAME) .setProperty(LuceneIndexConstants.SUGGEST_UPDATE_FREQUENCY_MINUTES, 10); - NodeBuilder rules = index.child(LuceneIndexConstants.INDEX_RULES); + NodeBuilder rules = index.child(FulltextIndexConstants.INDEX_RULES); rules.setProperty(JCR_PRIMARYTYPE, "nt:unstructured", NAME); NodeBuilder ntBase = rules.child("nt:base"); ntBase.setProperty(JCR_PRIMARYTYPE, "nt:unstructured", NAME); //Enable nodeName index support ntBase.setProperty(LuceneIndexConstants.INDEX_NODE_NAME, true); - NodeBuilder props = ntBase.child(LuceneIndexConstants.PROP_NODE); + NodeBuilder props = ntBase.child(FulltextIndexConstants.PROP_NODE); props.setProperty(JCR_PRIMARYTYPE, "nt:unstructured", NAME); // Enable function-based indexes: upper+lower(name+localname+prop1) @@ -114,20 +115,20 @@ public class LuceneOakRepositoryStub ext private void enableFulltextIndex(NodeBuilder propNode){ propNode.setProperty(JCR_PRIMARYTYPE, "nt:unstructured", NAME) - .setProperty(LuceneIndexConstants.PROP_ANALYZED, true) - .setProperty(LuceneIndexConstants.PROP_NODE_SCOPE_INDEX, true) - .setProperty(LuceneIndexConstants.PROP_USE_IN_EXCERPT, true) - .setProperty(LuceneIndexConstants.PROP_PROPERTY_INDEX, true) + .setProperty(FulltextIndexConstants.PROP_ANALYZED, true) + .setProperty(FulltextIndexConstants.PROP_NODE_SCOPE_INDEX, true) + .setProperty(FulltextIndexConstants.PROP_USE_IN_EXCERPT, true) + .setProperty(FulltextIndexConstants.PROP_PROPERTY_INDEX, true) .setProperty(LuceneIndexConstants.PROP_USE_IN_SPELLCHECK, true) .setProperty(LuceneIndexConstants.PROP_USE_IN_SUGGEST, true) - .setProperty(LuceneIndexConstants.PROP_NAME, LuceneIndexConstants.REGEX_ALL_PROPS) - .setProperty(LuceneIndexConstants.PROP_IS_REGEX, true); + .setProperty(FulltextIndexConstants.PROP_NAME, FulltextIndexConstants.REGEX_ALL_PROPS) + .setProperty(FulltextIndexConstants.PROP_IS_REGEX, true); } private static void functionBasedIndex(NodeBuilder props, String function) { props.child(function.replace('[', '_').replace(']', '_')). setProperty(JCR_PRIMARYTYPE, "nt:unstructured", NAME). - setProperty(LuceneIndexConstants.PROP_FUNCTION, function); + setProperty(FulltextIndexConstants.PROP_FUNCTION, function); } } Modified: jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/jcr/query/FacetTest.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/jcr/query/FacetTest.java?rev=1841926&r1=1841925&r2=1841926&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/jcr/query/FacetTest.java (original) +++ jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/jcr/query/FacetTest.java Tue Sep 25 12:24:15 2018 @@ -30,6 +30,7 @@ import java.util.List; import org.apache.jackrabbit.core.query.AbstractQueryTest; import org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexConstants; +import org.apache.jackrabbit.oak.plugins.index.search.FulltextIndexConstants; import org.apache.jackrabbit.oak.query.facet.FacetResult; import org.junit.After; import org.junit.Before; @@ -59,17 +60,17 @@ public class FacetTest extends AbstractQ Node node = props.addNode("relative"); node.setProperty("name", "jc/text"); - node.setProperty(LuceneIndexConstants.PROP_FACETS, true); - node.setProperty(LuceneIndexConstants.PROP_ANALYZED, true); + node.setProperty(FulltextIndexConstants.PROP_FACETS, true); + node.setProperty(FulltextIndexConstants.PROP_ANALYZED, true); node = props.getNode("allProps"); - node.setProperty(LuceneIndexConstants.PROP_FACETS, true); + node.setProperty(FulltextIndexConstants.PROP_FACETS, true); markIndexForReindex(); superuser.save(); superuser.refresh(true); if (!superuser.nodeExists(FACET_CONFING_NODE_PATH)) { node = superuser.getNode(INDEX_CONFING_NODE_PATH); - node.addNode(LuceneIndexConstants.FACETS); + node.addNode(FulltextIndexConstants.FACETS); markIndexForReindex(); superuser.save(); superuser.refresh(true); @@ -81,7 +82,7 @@ public class FacetTest extends AbstractQ assertTrue(superuser.nodeExists("/oak:index/luceneGlobal/facets")); if (superuser.nodeExists(FACET_CONFING_PROP_PATH)) { - superuser.getProperty(LuceneIndexConstants.PROP_FACETS).remove(); + superuser.getProperty(FulltextIndexConstants.PROP_FACETS).remove(); superuser.save(); superuser.refresh(true); } @@ -504,7 +505,7 @@ public class FacetTest extends AbstractQ public void testFacetRetrievalNumberOfFacetsConfiguredHigherThanDefault() throws RepositoryException { Node facetsConfig = superuser.getNode(FACET_CONFING_NODE_PATH); - facetsConfig.setProperty(LuceneIndexConstants.PROP_FACETS_TOP_CHILDREN, 11); + facetsConfig.setProperty(FulltextIndexConstants.PROP_FACETS_TOP_CHILDREN, 11); markIndexForReindex(); superuser.save(); superuser.refresh(true); @@ -555,7 +556,7 @@ public class FacetTest extends AbstractQ public void testFacetRetrievalNumberOfFacetsConfiguredLowerThanDefault() throws RepositoryException { Node facetsConfig = superuser.getNode(FACET_CONFING_NODE_PATH); - facetsConfig.setProperty(LuceneIndexConstants.PROP_FACETS_TOP_CHILDREN, 7); + facetsConfig.setProperty(FulltextIndexConstants.PROP_FACETS_TOP_CHILDREN, 7); markIndexForReindex(); superuser.save(); superuser.refresh(true); Modified: jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/jcr/query/ResultSizeTest.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/jcr/query/ResultSizeTest.java?rev=1841926&r1=1841925&r2=1841926&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/jcr/query/ResultSizeTest.java (original) +++ jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/jcr/query/ResultSizeTest.java Tue Sep 25 12:24:15 2018 @@ -26,8 +26,8 @@ import javax.jcr.query.Query; import javax.jcr.query.QueryManager; import org.apache.jackrabbit.core.query.AbstractQueryTest; -import org.apache.jackrabbit.oak.plugins.index.lucene.IndexFormatVersion; -import org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexConstants; +import org.apache.jackrabbit.oak.plugins.index.search.FulltextIndexConstants; +import org.apache.jackrabbit.oak.plugins.index.search.IndexFormatVersion; public class ResultSizeTest extends AbstractQueryTest { @@ -42,7 +42,7 @@ public class ResultSizeTest extends Abst luceneGlobal.setProperty("type", "disabled"); Node luceneV1 = index.addNode("luceneV1", "oak:QueryIndexDefinition"); luceneV1.setProperty("type", "lucene"); - luceneV1.setProperty(LuceneIndexConstants.COMPAT_MODE, IndexFormatVersion.V1.getVersion()); + luceneV1.setProperty(FulltextIndexConstants.COMPAT_MODE, IndexFormatVersion.V1.getVersion()); session.save(); try { Modified: jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/ActiveDeletedBlobCollectorMBeanImplTest.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/ActiveDeletedBlobCollectorMBeanImplTest.java?rev=1841926&r1=1841925&r2=1841926&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/ActiveDeletedBlobCollectorMBeanImplTest.java (original) +++ jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/ActiveDeletedBlobCollectorMBeanImplTest.java Tue Sep 25 12:24:15 2018 @@ -44,6 +44,7 @@ import org.apache.jackrabbit.oak.plugins import org.apache.jackrabbit.oak.plugins.index.lucene.directory.IndexConsistencyChecker; import org.apache.jackrabbit.oak.plugins.index.nodetype.NodeTypeIndexProvider; import org.apache.jackrabbit.oak.plugins.index.property.PropertyIndexEditorProvider; +import org.apache.jackrabbit.oak.plugins.index.search.ExtractedTextCache; import org.apache.jackrabbit.oak.plugins.memory.MemoryNodeStore; import org.apache.jackrabbit.oak.spi.blob.GarbageCollectableBlobStore; import org.apache.jackrabbit.oak.spi.blob.MemoryBlobStore; Modified: jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/BadIndexTrackerTest.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/BadIndexTrackerTest.java?rev=1841926&r1=1841925&r2=1841926&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/BadIndexTrackerTest.java (original) +++ jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/BadIndexTrackerTest.java Tue Sep 25 12:24:15 2018 @@ -22,6 +22,7 @@ package org.apache.jackrabbit.oak.plugin import java.util.Collections; import java.util.concurrent.TimeUnit; +import org.apache.jackrabbit.oak.plugins.index.search.BadIndexTracker; import org.junit.Test; import static org.hamcrest.Matchers.hasItem; Modified: jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/ExcerptTest.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/ExcerptTest.java?rev=1841926&r1=1841925&r2=1841926&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/ExcerptTest.java (original) +++ jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/ExcerptTest.java Tue Sep 25 12:24:15 2018 @@ -32,6 +32,8 @@ import org.apache.jackrabbit.oak.api.Tre import org.apache.jackrabbit.oak.api.Type; import org.apache.jackrabbit.oak.plugins.index.nodetype.NodeTypeIndexProvider; import org.apache.jackrabbit.oak.plugins.index.property.PropertyIndexEditorProvider; +import org.apache.jackrabbit.oak.plugins.index.search.FulltextIndexConstants; +import org.apache.jackrabbit.oak.plugins.index.search.IndexFormatVersion; import org.apache.jackrabbit.oak.plugins.memory.ArrayBasedBlob; import org.apache.jackrabbit.oak.plugins.memory.MemoryNodeStore; import org.apache.jackrabbit.oak.query.AbstractQueryTest; @@ -69,27 +71,27 @@ public class ExcerptTest extends Abstrac def.setProperty(JcrConstants.JCR_PRIMARYTYPE, INDEX_DEFINITIONS_NODE_TYPE, Type.NAME); def.setProperty(TYPE_PROPERTY_NAME, LuceneIndexConstants.TYPE_LUCENE); def.setProperty(REINDEX_PROPERTY_NAME, true); - def.setProperty(LuceneIndexConstants.EVALUATE_PATH_RESTRICTION, true); - def.setProperty(LuceneIndexConstants.COMPAT_MODE, IndexFormatVersion.V2.getVersion()); + def.setProperty(FulltextIndexConstants.EVALUATE_PATH_RESTRICTION, true); + def.setProperty(FulltextIndexConstants.COMPAT_MODE, IndexFormatVersion.V2.getVersion()); - Tree properties = def.addChild(LuceneIndexConstants.INDEX_RULES) + Tree properties = def.addChild(FulltextIndexConstants.INDEX_RULES) .addChild("nt:base") - .addChild(LuceneIndexConstants.PROP_NODE); + .addChild(FulltextIndexConstants.PROP_NODE); Tree notIndexedProp = properties.addChild("baz"); - notIndexedProp.setProperty(LuceneIndexConstants.PROP_NODE_SCOPE_INDEX, true); + notIndexedProp.setProperty(FulltextIndexConstants.PROP_NODE_SCOPE_INDEX, true); Tree relativeProp = properties.addChild("relative-baz"); - relativeProp.setProperty(LuceneIndexConstants.PROP_ANALYZED, true); - relativeProp.setProperty(LuceneIndexConstants.PROP_USE_IN_EXCERPT, true); - relativeProp.setProperty(LuceneIndexConstants.PROP_NAME, "relative/baz"); + relativeProp.setProperty(FulltextIndexConstants.PROP_ANALYZED, true); + relativeProp.setProperty(FulltextIndexConstants.PROP_USE_IN_EXCERPT, true); + relativeProp.setProperty(FulltextIndexConstants.PROP_NAME, "relative/baz"); Tree allProps = properties.addChild("allProps"); - allProps.setProperty(LuceneIndexConstants.PROP_ANALYZED, true); - allProps.setProperty(LuceneIndexConstants.PROP_NODE_SCOPE_INDEX, true); - allProps.setProperty(LuceneIndexConstants.PROP_USE_IN_EXCERPT, true); - allProps.setProperty(LuceneIndexConstants.PROP_NAME, LuceneIndexConstants.REGEX_ALL_PROPS); - allProps.setProperty(LuceneIndexConstants.PROP_IS_REGEX, true); + allProps.setProperty(FulltextIndexConstants.PROP_ANALYZED, true); + allProps.setProperty(FulltextIndexConstants.PROP_NODE_SCOPE_INDEX, true); + allProps.setProperty(FulltextIndexConstants.PROP_USE_IN_EXCERPT, true); + allProps.setProperty(FulltextIndexConstants.PROP_NAME, FulltextIndexConstants.REGEX_ALL_PROPS); + allProps.setProperty(FulltextIndexConstants.PROP_IS_REGEX, true); root.commit(); } Modified: jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/FunctionIndexTest.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/FunctionIndexTest.java?rev=1841926&r1=1841925&r2=1841926&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/FunctionIndexTest.java (original) +++ jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/FunctionIndexTest.java Tue Sep 25 12:24:15 2018 @@ -45,6 +45,7 @@ import org.apache.jackrabbit.oak.api.Typ import org.apache.jackrabbit.oak.plugins.index.lucene.util.IndexDefinitionBuilder; import org.apache.jackrabbit.oak.plugins.index.nodetype.NodeTypeIndexProvider; import org.apache.jackrabbit.oak.plugins.index.property.PropertyIndexEditorProvider; +import org.apache.jackrabbit.oak.plugins.index.search.FulltextIndexConstants; import org.apache.jackrabbit.oak.plugins.memory.MemoryNodeStore; import org.apache.jackrabbit.oak.plugins.memory.PropertyStates; import org.apache.jackrabbit.oak.InitialContentHelper; @@ -112,11 +113,11 @@ public class FunctionIndexTest extends A Tree luceneIndex = createIndex("lowerLocalName", Collections.<String>emptySet()); luceneIndex.setProperty("excludedPaths", Lists.newArrayList("/jcr:system", "/oak:index"), Type.STRINGS); - Tree func = luceneIndex.addChild(LuceneIndexConstants.INDEX_RULES) + Tree func = luceneIndex.addChild(FulltextIndexConstants.INDEX_RULES) .addChild("nt:base") - .addChild(LuceneIndexConstants.PROP_NODE) + .addChild(FulltextIndexConstants.PROP_NODE) .addChild("lowerLocalName"); - func.setProperty(LuceneIndexConstants.PROP_FUNCTION, "lower(localname())"); + func.setProperty(FulltextIndexConstants.PROP_FUNCTION, "lower(localname())"); Tree test = root.getTree("/").addChild("test"); for (int idx = 0; idx < 3; idx++) { @@ -149,13 +150,13 @@ public class FunctionIndexTest extends A Tree luceneIndex = createIndex("lengthName", Collections.<String>emptySet()); luceneIndex.setProperty("excludedPaths", Lists.newArrayList("/jcr:system", "/oak:index"), Type.STRINGS); - Tree func = luceneIndex.addChild(LuceneIndexConstants.INDEX_RULES) + Tree func = luceneIndex.addChild(FulltextIndexConstants.INDEX_RULES) .addChild("nt:base") - .addChild(LuceneIndexConstants.PROP_NODE) + .addChild(FulltextIndexConstants.PROP_NODE) .addChild("lengthName"); - func.setProperty(LuceneIndexConstants.PROP_ORDERED, true); - func.setProperty(LuceneIndexConstants.PROP_TYPE, PropertyType.TYPENAME_LONG); - func.setProperty(LuceneIndexConstants.PROP_FUNCTION, "fn:string-length(fn:name())"); + func.setProperty(FulltextIndexConstants.PROP_ORDERED, true); + func.setProperty(FulltextIndexConstants.PROP_TYPE, PropertyType.TYPENAME_LONG); + func.setProperty(FulltextIndexConstants.PROP_FUNCTION, "fn:string-length(fn:name())"); Tree test = root.getTree("/").addChild("test"); for (int idx = 1; idx < 1000; idx *= 10) { @@ -183,11 +184,11 @@ public class FunctionIndexTest extends A Tree luceneIndex = createIndex("length", Collections.<String>emptySet()); luceneIndex.setProperty("excludedPaths", Lists.newArrayList("/jcr:system", "/oak:index"), Type.STRINGS); - Tree func = luceneIndex.addChild(LuceneIndexConstants.INDEX_RULES) + Tree func = luceneIndex.addChild(FulltextIndexConstants.INDEX_RULES) .addChild("nt:base") - .addChild(LuceneIndexConstants.PROP_NODE) + .addChild(FulltextIndexConstants.PROP_NODE) .addChild("lengthName"); - func.setProperty(LuceneIndexConstants.PROP_FUNCTION, "fn:string-length(@value)"); + func.setProperty(FulltextIndexConstants.PROP_FUNCTION, "fn:string-length(@value)"); Tree test = root.getTree("/").addChild("test"); for (int idx = 1; idx <= 1000; idx *= 10) { @@ -209,11 +210,11 @@ public class FunctionIndexTest extends A @Test public void upperCase() throws Exception { Tree luceneIndex = createIndex("upper", Collections.<String>emptySet()); - Tree func = luceneIndex.addChild(LuceneIndexConstants.INDEX_RULES) + Tree func = luceneIndex.addChild(FulltextIndexConstants.INDEX_RULES) .addChild("nt:base") - .addChild(LuceneIndexConstants.PROP_NODE) + .addChild(FulltextIndexConstants.PROP_NODE) .addChild("upperName"); - func.setProperty(LuceneIndexConstants.PROP_FUNCTION, "fn:upper-case(@name)"); + func.setProperty(FulltextIndexConstants.PROP_FUNCTION, "fn:upper-case(@name)"); Tree test = root.getTree("/").addChild("test"); test.setProperty("jcr:primaryType", "nt:unstructured", Type.NAME); @@ -239,11 +240,11 @@ public class FunctionIndexTest extends A @Test public void upperCaseRelative() throws Exception { Tree luceneIndex = createIndex("upper", Collections.<String>emptySet()); - Tree func = luceneIndex.addChild(LuceneIndexConstants.INDEX_RULES) + Tree func = luceneIndex.addChild(FulltextIndexConstants.INDEX_RULES) .addChild("nt:base") - .addChild(LuceneIndexConstants.PROP_NODE) + .addChild(FulltextIndexConstants.PROP_NODE) .addChild("upperName"); - func.setProperty(LuceneIndexConstants.PROP_FUNCTION, "upper([data/name])"); + func.setProperty(FulltextIndexConstants.PROP_FUNCTION, "upper([data/name])"); Tree test = root.getTree("/").addChild("test"); test.setProperty("jcr:primaryType", "nt:unstructured", Type.NAME); @@ -373,8 +374,8 @@ public class FunctionIndexTest extends A INDEX_DEFINITIONS_NODE_TYPE, Type.NAME); def.setProperty(TYPE_PROPERTY_NAME, LuceneIndexConstants.TYPE_LUCENE); def.setProperty(REINDEX_PROPERTY_NAME, true); - def.setProperty(LuceneIndexConstants.FULL_TEXT_ENABLED, false); - def.setProperty(PropertyStates.createProperty(LuceneIndexConstants.INCLUDE_PROPERTY_NAMES, propNames, Type.STRINGS)); + def.setProperty(FulltextIndexConstants.FULL_TEXT_ENABLED, false); + def.setProperty(PropertyStates.createProperty(FulltextIndexConstants.INCLUDE_PROPERTY_NAMES, propNames, Type.STRINGS)); def.setProperty(LuceneIndexConstants.SAVE_DIR_LISTING, true); return index.getChild(INDEX_DEFINITIONS_NAME).getChild(name); } Modified: jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexCopierCleanupTest.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexCopierCleanupTest.java?rev=1841926&r1=1841925&r2=1841926&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexCopierCleanupTest.java (original) +++ jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexCopierCleanupTest.java Tue Sep 25 12:24:15 2018 @@ -46,8 +46,8 @@ import java.util.concurrent.TimeUnit; import static com.google.common.util.concurrent.MoreExecutors.sameThreadExecutor; import static org.apache.jackrabbit.oak.InitialContentHelper.INITIAL_CONTENT; -import static org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexConstants.INDEX_DATA_CHILD_NAME; import static org.apache.jackrabbit.oak.plugins.index.lucene.directory.CopyOnReadDirectory.DELETE_MARGIN_MILLIS_NAME; +import static org.apache.jackrabbit.oak.plugins.index.search.FulltextIndexConstants.INDEX_DATA_CHILD_NAME; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; @@ -79,7 +79,7 @@ public class IndexCopierCleanupTest { private final Closer closer = Closer.create(); - private IndexDefinition defn = null; + private LuceneIndexDefinition defn = null; private CloseSafeRemoteRAMDirectory remote = null; @@ -92,7 +92,7 @@ public class IndexCopierCleanupTest { System.setProperty(DELETE_MARGIN_MILLIS_NAME, String.valueOf(SAFE_MARGIN_FOR_DELETION)); LuceneIndexEditorContext.configureUniqueId(builder); - defn = new IndexDefinition(root, builder.getNodeState(), indexPath); + defn = new LuceneIndexDefinition(root, builder.getNodeState(), indexPath); remote = new CloseSafeRemoteRAMDirectory(closer); localFSDir = temporaryFolder.newFolder(); @@ -469,12 +469,12 @@ public class IndexCopierCleanupTest { } @Override - protected Directory createLocalDirForIndexReader(String indexPath, IndexDefinition definition, String dirName) throws IOException { + protected Directory createLocalDirForIndexReader(String indexPath, LuceneIndexDefinition definition, String dirName) throws IOException { return new DelayCopyingSimpleFSDirectory(baseFSDir); } @Override - protected Directory createLocalDirForIndexWriter(IndexDefinition definition, String dirName) throws IOException { + protected Directory createLocalDirForIndexWriter(LuceneIndexDefinition definition, String dirName) throws IOException { return new DelayCopyingSimpleFSDirectory(baseFSDir); } Modified: jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexCopierTest.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexCopierTest.java?rev=1841926&r1=1841925&r2=1841926&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexCopierTest.java (original) +++ jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexCopierTest.java Tue Sep 25 12:24:15 2018 @@ -53,6 +53,7 @@ import com.google.common.util.concurrent import org.apache.commons.io.FileUtils; import org.apache.jackrabbit.oak.commons.IOUtils; import org.apache.jackrabbit.oak.plugins.index.lucene.directory.LocalIndexFile; +import org.apache.jackrabbit.oak.plugins.index.search.IndexDefinition; import org.apache.jackrabbit.oak.spi.state.NodeBuilder; import org.apache.jackrabbit.oak.spi.state.NodeState; import org.apache.jackrabbit.oak.stats.Clock; @@ -72,9 +73,9 @@ import org.junit.rules.TemporaryFolder; import static com.google.common.collect.Lists.newArrayList; import static com.google.common.collect.Sets.newHashSet; import static com.google.common.util.concurrent.MoreExecutors.sameThreadExecutor; -import static org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexConstants.INDEX_DATA_CHILD_NAME; import static org.apache.jackrabbit.oak.InitialContentHelper.INITIAL_CONTENT; import static org.apache.jackrabbit.oak.plugins.index.lucene.directory.CopyOnReadDirectory.DELETE_MARGIN_MILLIS_NAME; +import static org.apache.jackrabbit.oak.plugins.index.search.FulltextIndexConstants.INDEX_DATA_CHILD_NAME; import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.contains; import static org.hamcrest.Matchers.containsInAnyOrder; @@ -125,7 +126,7 @@ public class IndexCopierTest { @Test public void basicTest() throws Exception{ Directory baseDir = new RAMDirectory(); - IndexDefinition defn = new IndexDefinition(root, builder.getNodeState(), "/foo"); + LuceneIndexDefinition defn = new LuceneIndexDefinition(root, builder.getNodeState(), "/foo"); IndexCopier c1 = new RAMIndexCopier(baseDir, sameThreadExecutor(), getWorkDir()); Directory remote = new RAMDirectory(); @@ -158,7 +159,7 @@ public class IndexCopierTest { super.sync(names); } }; - IndexDefinition defn = new IndexDefinition(root, builder.getNodeState(), "/foo"); + LuceneIndexDefinition defn = new LuceneIndexDefinition(root, builder.getNodeState(), "/foo"); IndexCopier c1 = new RAMIndexCopier(baseDir, sameThreadExecutor(), getWorkDir(), true); Directory remote = new RAMDirectory(); @@ -186,7 +187,7 @@ public class IndexCopierTest { @Test public void nonExistentFile() throws Exception{ Directory baseDir = new RAMDirectory(); - IndexDefinition defn = new IndexDefinition(root, builder.getNodeState(), "/foo"); + LuceneIndexDefinition defn = new LuceneIndexDefinition(root, builder.getNodeState(), "/foo"); CollectingExecutor executor = new CollectingExecutor(); IndexCopier c1 = new RAMIndexCopier(baseDir, executor, getWorkDir(), true); @@ -205,7 +206,7 @@ public class IndexCopierTest { @Test public void basicTestWithFS() throws Exception{ - IndexDefinition defn = new IndexDefinition(root, builder.getNodeState(), "/foo"); + LuceneIndexDefinition defn = new LuceneIndexDefinition(root, builder.getNodeState(), "/foo"); IndexCopier c1 = new IndexCopier(sameThreadExecutor(), getWorkDir()); Directory remote = new RAMDirectory(); @@ -235,7 +236,7 @@ public class IndexCopierTest { @Test public void multiDirNames() throws Exception{ - IndexDefinition defn = new IndexDefinition(root, builder.getNodeState(), "/foo"); + LuceneIndexDefinition defn = new LuceneIndexDefinition(root, builder.getNodeState(), "/foo"); IndexCopier c1 = new IndexCopier(sameThreadExecutor(), getWorkDir()); Directory remote = new CloseSafeDir(); @@ -254,7 +255,7 @@ public class IndexCopierTest { @Test public void deleteOldPostReindex() throws Exception{ - IndexDefinition defn = new IndexDefinition(root, builder.getNodeState(), "/foo"); + LuceneIndexDefinition defn = new LuceneIndexDefinition(root, builder.getNodeState(), "/foo"); IndexCopier c1 = new IndexCopier(sameThreadExecutor(), getWorkDir()); Directory remote = new CloseSafeDir(); @@ -271,7 +272,7 @@ public class IndexCopierTest { assertTrue(new File(indexDir, "t1").exists()); doReindex(builder); - defn = new IndexDefinition(root, builder.getNodeState(), "/foo"); + defn = new LuceneIndexDefinition(root, builder.getNodeState(), "/foo"); //Close old version w1.close(); @@ -295,7 +296,7 @@ public class IndexCopierTest { @Test public void concurrentRead() throws Exception{ Directory baseDir = new RAMDirectory(); - IndexDefinition defn = new IndexDefinition(root, builder.getNodeState(), "/foo"); + LuceneIndexDefinition defn = new LuceneIndexDefinition(root, builder.getNodeState(), "/foo"); CollectingExecutor executor = new CollectingExecutor(); IndexCopier c1 = new RAMIndexCopier(baseDir, executor, getWorkDir()); @@ -333,7 +334,7 @@ public class IndexCopierTest { @Test public void copyInProgressStats() throws Exception{ Directory baseDir = new RAMDirectory(); - IndexDefinition defn = new IndexDefinition(root, builder.getNodeState(), "/foo"); + LuceneIndexDefinition defn = new LuceneIndexDefinition(root, builder.getNodeState(), "/foo"); final List<ListenableFuture<?>> submittedTasks = Lists.newArrayList(); ExecutorService executor = new ForwardingListeningExecutorService() { @@ -404,7 +405,7 @@ public class IndexCopierTest { @Test public void reuseLocalDir() throws Exception{ Directory baseDir = new RAMDirectory(); - IndexDefinition defn = new IndexDefinition(root, builder.getNodeState(), "/foo"); + LuceneIndexDefinition defn = new LuceneIndexDefinition(root, builder.getNodeState(), "/foo"); IndexCopier c1 = new RAMIndexCopier(baseDir, sameThreadExecutor(), getWorkDir()); FileTrackingDirectory remote = new FileTrackingDirectory(); @@ -439,7 +440,7 @@ public class IndexCopierTest { @Test public void deleteCorruptedFile() throws Exception{ Directory baseDir = new RAMDirectory(); - IndexDefinition defn = new IndexDefinition(root, builder.getNodeState(), "/foo"); + LuceneIndexDefinition defn = new LuceneIndexDefinition(root, builder.getNodeState(), "/foo"); RAMIndexCopier c1 = new RAMIndexCopier(baseDir, sameThreadExecutor(), getWorkDir()); Directory remote = new RAMDirectory(){ @@ -469,7 +470,7 @@ public class IndexCopierTest { Directory baseDir = new CloseSafeDir(); - IndexDefinition defn = new IndexDefinition(root, builder.getNodeState(), "/foo"); + LuceneIndexDefinition defn = new LuceneIndexDefinition(root, builder.getNodeState(), "/foo"); IndexCopier c1 = new RAMIndexCopier(baseDir, sameThreadExecutor(), getWorkDir()); Directory r1 = new DelayCopyingSimpleFSDirectory(); @@ -512,7 +513,7 @@ public class IndexCopierTest { } }; - IndexDefinition defn = new IndexDefinition(root, builder.getNodeState(), "/foo"); + LuceneIndexDefinition defn = new LuceneIndexDefinition(root, builder.getNodeState(), "/foo"); IndexCopier c1 = new RAMIndexCopier(baseDir, sameThreadExecutor(), getWorkDir()); Directory r1 = new DelayCopyingSimpleFSDirectory(); @@ -563,7 +564,7 @@ public class IndexCopierTest { public void deletedOnlyFilesForOlderVersion() throws Exception{ Directory baseDir = new CloseSafeDir(); - IndexDefinition defn = new IndexDefinition(root, builder.getNodeState(), "/foo"); + LuceneIndexDefinition defn = new LuceneIndexDefinition(root, builder.getNodeState(), "/foo"); IndexCopier copier = new RAMIndexCopier(baseDir, sameThreadExecutor(), getWorkDir()); //1. Open a local and read t1 from remote @@ -593,7 +594,7 @@ public class IndexCopierTest { IndexCopier copier = new IndexCopier(sameThreadExecutor(), getWorkDir()); - IndexDefinition defn = new IndexDefinition(root, builder.getNodeState(), "/foo"); + LuceneIndexDefinition defn = new LuceneIndexDefinition(root, builder.getNodeState(), "/foo"); Directory dir = copier.wrapForWrite(defn, remote, false, INDEX_DATA_CHILD_NAME); byte[] t1 = writeFile(dir, "t1"); @@ -611,7 +612,7 @@ public class IndexCopierTest { IndexCopier copier = new IndexCopier(sameThreadExecutor(), getWorkDir()); - IndexDefinition defn = new IndexDefinition(root, builder.getNodeState(), "/foo"); + LuceneIndexDefinition defn = new LuceneIndexDefinition(root, builder.getNodeState(), "/foo"); Directory dir = copier.wrapForWrite(defn, remote, false, INDEX_DATA_CHILD_NAME); byte[] t1 = writeFile(dir, "t1"); @@ -632,7 +633,7 @@ public class IndexCopierTest { @Test public void copyOnWriteBasics() throws Exception{ Directory baseDir = new CloseSafeDir(); - IndexDefinition defn = new IndexDefinition(root, builder.getNodeState(), "/foo"); + LuceneIndexDefinition defn = new LuceneIndexDefinition(root, builder.getNodeState(), "/foo"); IndexCopier copier = new RAMIndexCopier(baseDir, sameThreadExecutor(), getWorkDir()); Directory remote = new RAMDirectory(); @@ -692,7 +693,7 @@ public class IndexCopierTest { @Test public void cowExistingLocalFileNotDeleted() throws Exception{ Directory baseDir = new CloseSafeDir(); - IndexDefinition defn = new IndexDefinition(root, builder.getNodeState(), "/foo"); + LuceneIndexDefinition defn = new LuceneIndexDefinition(root, builder.getNodeState(), "/foo"); IndexCopier copier = new RAMIndexCopier(baseDir, sameThreadExecutor(), getWorkDir()); Directory remote = new CloseSafeDir(); @@ -736,7 +737,7 @@ public class IndexCopierTest { return super.openInput(name, context); } }; - IndexDefinition defn = new IndexDefinition(root, builder.getNodeState(), "/foo"); + LuceneIndexDefinition defn = new LuceneIndexDefinition(root, builder.getNodeState(), "/foo"); IndexCopier copier = new RAMIndexCopier(baseDir, sameThreadExecutor(), getWorkDir()); final Set<String> readRemotes = newHashSet(); @@ -773,7 +774,7 @@ public class IndexCopierTest { public void cowCopyDoneOnClose() throws Exception{ final CollectingExecutor executor = new CollectingExecutor(); Directory baseDir = new CloseSafeDir(); - IndexDefinition defn = new IndexDefinition(root, builder.getNodeState(), "/foo"); + LuceneIndexDefinition defn = new LuceneIndexDefinition(root, builder.getNodeState(), "/foo"); IndexCopier copier = new RAMIndexCopier(baseDir, executor, getWorkDir()); Directory remote = new CloseSafeDir(); @@ -835,7 +836,7 @@ public class IndexCopierTest { public void cowCopyDoneOnCloseExceptionHandling() throws Exception{ final CollectingExecutor executor = new CollectingExecutor(); Directory baseDir = new CloseSafeDir(); - IndexDefinition defn = new IndexDefinition(root, builder.getNodeState(), "/foo"); + LuceneIndexDefinition defn = new LuceneIndexDefinition(root, builder.getNodeState(), "/foo"); IndexCopier copier = new RAMIndexCopier(baseDir, executor, getWorkDir()); Directory remote = new CloseSafeDir(); @@ -894,7 +895,7 @@ public class IndexCopierTest { public void cowFailureInCopy() throws Exception{ ExecutorService executorService = Executors.newFixedThreadPool(2); Directory baseDir = new CloseSafeDir(); - IndexDefinition defn = new IndexDefinition(root, builder.getNodeState(), "/foo"); + LuceneIndexDefinition defn = new LuceneIndexDefinition(root, builder.getNodeState(), "/foo"); IndexCopier copier = new RAMIndexCopier(baseDir, executorService, getWorkDir()); final Set<String> toFail = Sets.newHashSet(); @@ -927,7 +928,7 @@ public class IndexCopierTest { public void cowPoolClosedWithTaskInQueue() throws Exception{ ExecutorService executorService = Executors.newFixedThreadPool(2); Directory baseDir = new CloseSafeDir(); - IndexDefinition defn = new IndexDefinition(root, builder.getNodeState(), "/foo"); + LuceneIndexDefinition defn = new LuceneIndexDefinition(root, builder.getNodeState(), "/foo"); IndexCopier copier = new RAMIndexCopier(baseDir, executorService, getWorkDir()); final Set<String> toPause = Sets.newHashSet(); @@ -988,7 +989,7 @@ public class IndexCopierTest { executor.setForwardingExecutor(executorService); Directory baseDir = new CloseSafeDir(); - IndexDefinition defn = new IndexDefinition(root, builder.getNodeState(), indexPath); + LuceneIndexDefinition defn = new LuceneIndexDefinition(root, builder.getNodeState(), indexPath); IndexCopier copier = new RAMIndexCopier(baseDir, executor, getWorkDir(), true); Directory remote = new CloseSafeDir(); @@ -1049,7 +1050,7 @@ public class IndexCopierTest { @Test public void directoryContentMismatch_COR() throws Exception{ Directory baseDir = new CloseSafeDir(); - IndexDefinition defn = new IndexDefinition(root, builder.getNodeState(), "/foo"); + LuceneIndexDefinition defn = new LuceneIndexDefinition(root, builder.getNodeState(), "/foo"); IndexCopier copier = new RAMIndexCopier(baseDir, sameThreadExecutor(), getWorkDir(), true); Directory remote = new RAMDirectory(); @@ -1139,12 +1140,12 @@ public class IndexCopierTest { } @Override - protected Directory createLocalDirForIndexReader(String indexPath, IndexDefinition definition, String dirName) throws IOException { + protected Directory createLocalDirForIndexReader(String indexPath, LuceneIndexDefinition definition, String dirName) throws IOException { return baseDir; } @Override - protected Directory createLocalDirForIndexWriter(IndexDefinition definition, String dirName) throws IOException { + protected Directory createLocalDirForIndexWriter(LuceneIndexDefinition definition, String dirName) throws IOException { return baseDir; } } Modified: jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexNodeManagerTest.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexNodeManagerTest.java?rev=1841926&r1=1841925&r2=1841926&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexNodeManagerTest.java (original) +++ jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexNodeManagerTest.java Tue Sep 25 12:24:15 2018 @@ -27,12 +27,12 @@ import com.google.common.collect.Immutab import org.apache.jackrabbit.oak.plugins.index.lucene.directory.OakDirectory; import org.apache.jackrabbit.oak.plugins.index.lucene.hybrid.NRTIndex; import org.apache.jackrabbit.oak.plugins.index.lucene.hybrid.NRTIndexFactory; -import org.apache.jackrabbit.oak.plugins.index.lucene.hybrid.ReaderRefreshPolicy; import org.apache.jackrabbit.oak.plugins.index.lucene.reader.DefaultIndexReaderFactory; -import org.apache.jackrabbit.oak.plugins.index.lucene.reader.LuceneIndexReader; 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.plugins.index.lucene.writer.IndexWriterUtils; +import org.apache.jackrabbit.oak.plugins.index.search.spi.query.IndexNodeManager; +import org.apache.jackrabbit.oak.plugins.index.search.update.ReaderRefreshPolicy; +import org.apache.jackrabbit.oak.plugins.index.search.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; @@ -50,9 +50,9 @@ import org.junit.rules.TemporaryFolder; import static com.google.common.util.concurrent.MoreExecutors.sameThreadExecutor; import static org.apache.jackrabbit.oak.api.Type.STRINGS; -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.InitialContentHelper.INITIAL_CONTENT; +import static org.apache.jackrabbit.oak.plugins.index.search.FieldNames.PATH; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotNull; @@ -89,14 +89,14 @@ public class IndexNodeManagerTest { @Test public void nullIndexNode() throws Exception{ - assertNull(IndexNodeManager.open("/foo", root, builder.getNodeState(), readerFactory, null)); - assertNull(IndexNodeManager.open("/foo", root, builder.getNodeState(), readerFactory, nrtFactory)); + assertNull(LuceneIndexNodeManager.open("/foo", root, builder.getNodeState(), readerFactory, null)); + assertNull(LuceneIndexNodeManager.open("/foo", root, builder.getNodeState(), readerFactory, nrtFactory)); } @Test public void nonNullIndex_OnlyNRT() throws Exception{ - IndexNodeManager nodeManager = IndexNodeManager.open("/foo", root, createNRTIndex(), readerFactory, nrtFactory); - IndexNode node = nodeManager.acquire(); + LuceneIndexNodeManager nodeManager = LuceneIndexNodeManager.open("/foo", root, createNRTIndex(), readerFactory, nrtFactory); + LuceneIndexNode node = nodeManager.acquire(); assertNotNull(node.getSearcher()); TopDocs docs = node.getSearcher().search(new TermQuery(new Term(PATH, "/content/en")), 100); assertEquals(0, docs.totalHits); @@ -115,17 +115,17 @@ public class IndexNodeManagerTest { NodeBuilder builder = createNRTIndex().builder(); NodeBuilder rootBuilder = root.builder(); rootBuilder.child(IndexNodeManager.ASYNC).setProperty("async", "async"); - assertNull(IndexNodeManager.open("/foo", rootBuilder.getNodeState(), builder.getNodeState(), readerFactory, nrtFactory)); + assertNull(LuceneIndexNodeManager.open("/foo", rootBuilder.getNodeState(), builder.getNodeState(), readerFactory, nrtFactory)); } @Test public void lockAndRefreshPolicy() throws Exception { NodeState state = createNRTIndex(); - IndexDefinition definition = new IndexDefinition(root, state, "/foo"); + LuceneIndexDefinition definition = new LuceneIndexDefinition(root, state, "/foo"); NRTIndex nrtIndex = nrtFactory.createIndex(definition); NRTIndex mock = spy(nrtIndex); doReturn(new FailingPolicy()).when(mock).getRefreshPolicy(); - IndexNodeManager node = new IndexNodeManager("/foo", definition, Collections.<LuceneIndexReader>emptyList(), mock); + LuceneIndexNodeManager node = new LuceneIndexNodeManager("/foo", definition, Collections.emptyList(), mock); try { node.acquire(); @@ -149,22 +149,22 @@ public class IndexNodeManagerTest { } assertNotNull("nrtIndex; Non existing /:async", - IndexNodeManager.open("/foo", root, nrtIndex, readerFactory, nrtFactory)); + LuceneIndexNodeManager.open("/foo", root, nrtIndex, readerFactory, nrtFactory)); assertNull("asyncIndex; Non existing /:async", - IndexNodeManager.open("/foo", root, asyncIndex, readerFactory, nrtFactory)); + LuceneIndexNodeManager.open("/foo", root, asyncIndex, readerFactory, nrtFactory)); assertNull("nonAsyncIndex; Non existing /:async", - IndexNodeManager.open("/foo", root, nonAsyncIndex, readerFactory, nrtFactory)); + LuceneIndexNodeManager.open("/foo", root, nonAsyncIndex, readerFactory, nrtFactory)); // Fake an empty /:async - first indexing cycle isn't done yet builder.child(":async"); root = builder.getNodeState(); assertNotNull("nrtIndex; empty /:async", - IndexNodeManager.open("/foo", root, nrtIndex, readerFactory, nrtFactory)); + LuceneIndexNodeManager.open("/foo", root, nrtIndex, readerFactory, nrtFactory)); assertNull("asyncIndex; empty /:async", - IndexNodeManager.open("/foo", root, asyncIndex, readerFactory, nrtFactory)); + LuceneIndexNodeManager.open("/foo", root, asyncIndex, readerFactory, nrtFactory)); assertNull("nonAsyncIndex; empty /:async", - IndexNodeManager.open("/foo", root, nonAsyncIndex, readerFactory, nrtFactory)); + LuceneIndexNodeManager.open("/foo", root, nonAsyncIndex, readerFactory, nrtFactory)); // Fake async indexing cycle done with no data @@ -172,11 +172,11 @@ public class IndexNodeManagerTest { root = builder.getNodeState(); assertNull("nrtIndex; fake async cycle run", - IndexNodeManager.open("/foo", root, nrtIndex, readerFactory, nrtFactory)); + LuceneIndexNodeManager.open("/foo", root, nrtIndex, readerFactory, nrtFactory)); assertNull("asyncIndex; fake async cycle run", - IndexNodeManager.open("/foo", root, asyncIndex, readerFactory, nrtFactory)); + LuceneIndexNodeManager.open("/foo", root, asyncIndex, readerFactory, nrtFactory)); assertNull("nonAsyncIndex; fake async cycle run", - IndexNodeManager.open("/foo", root, nonAsyncIndex, readerFactory, nrtFactory)); + LuceneIndexNodeManager.open("/foo", root, nonAsyncIndex, readerFactory, nrtFactory)); } @Test @@ -184,7 +184,7 @@ public class IndexNodeManagerTest { NodeState nrtIndex = createNRTIndex(); { NodeBuilder indexBuilder = nrtIndex.builder(); - IndexDefinition indexDefinition = new IndexDefinition(root, indexBuilder.getNodeState(), "/foo"); + LuceneIndexDefinition indexDefinition = new LuceneIndexDefinition(root, indexBuilder.getNodeState(), "/foo"); IndexWriterConfig config = IndexWriterUtils.getIndexWriterConfig(indexDefinition, false); OakDirectory directory = new OakDirectory(indexBuilder, indexDefinition, false); IndexWriter writer = new IndexWriter(directory, config); @@ -208,11 +208,11 @@ public class IndexNodeManagerTest { root = builder.getNodeState(); assertNotNull("nrtIndex; fake async cycle run", - IndexNodeManager.open("/foo", root, nrtIndex, readerFactory, nrtFactory)); + LuceneIndexNodeManager.open("/foo", root, nrtIndex, readerFactory, nrtFactory)); assertNotNull("asyncIndex; fake async cycle run", - IndexNodeManager.open("/foo", root, asyncIndex, readerFactory, nrtFactory)); + LuceneIndexNodeManager.open("/foo", root, asyncIndex, readerFactory, nrtFactory)); assertNotNull("nonAsyncIndex; fake async cycle run", - IndexNodeManager.open("/foo", root, nonAsyncIndex, readerFactory, nrtFactory)); + LuceneIndexNodeManager.open("/foo", root, nonAsyncIndex, readerFactory, nrtFactory)); } @Test @@ -227,33 +227,33 @@ public class IndexNodeManagerTest { } assertFalse("nrtIndex; Non existing /:async", - IndexNodeManager.hasAsyncIndexerRun(root, "/foo", nrtIndex)); + LuceneIndexNodeManager.hasAsyncIndexerRun(root, "/foo", nrtIndex)); assertFalse("asyncIndex; Non existing /:async", - IndexNodeManager.hasAsyncIndexerRun(root, "/foo", asyncIndex)); + LuceneIndexNodeManager.hasAsyncIndexerRun(root, "/foo", asyncIndex)); assertFalse("nonAsyncIndex; Non existing /:async", - IndexNodeManager.hasAsyncIndexerRun(root, "/foo", nonAsyncIndex)); + LuceneIndexNodeManager.hasAsyncIndexerRun(root, "/foo", nonAsyncIndex)); // Fake an empty /:async - first indexing cycle isn't done yet builder.child(":async"); root = builder.getNodeState(); assertFalse("nrtIndex; Empty /:async", - IndexNodeManager.hasAsyncIndexerRun(root, "/foo", nrtIndex)); + LuceneIndexNodeManager.hasAsyncIndexerRun(root, "/foo", nrtIndex)); assertFalse("asyncIndex; Non existing /:async", - IndexNodeManager.hasAsyncIndexerRun(root, "/foo", asyncIndex)); + LuceneIndexNodeManager.hasAsyncIndexerRun(root, "/foo", asyncIndex)); assertFalse("nonAsyncIndex; Non existing /:async", - IndexNodeManager.hasAsyncIndexerRun(root, "/foo", nonAsyncIndex)); + LuceneIndexNodeManager.hasAsyncIndexerRun(root, "/foo", nonAsyncIndex)); // Fake async indexing cycle done builder.child(":async").setProperty("async", "some-random-id"); root = builder.getNodeState(); assertTrue("nrtIndex; fake async cycle run", - IndexNodeManager.hasAsyncIndexerRun(root, "/foo", nrtIndex)); + LuceneIndexNodeManager.hasAsyncIndexerRun(root, "/foo", nrtIndex)); assertTrue("asyncIndex; fake async cycle run", - IndexNodeManager.hasAsyncIndexerRun(root, "/foo", asyncIndex)); + LuceneIndexNodeManager.hasAsyncIndexerRun(root, "/foo", asyncIndex)); assertFalse("nonAsyncIndex; fake async cycle run", - IndexNodeManager.hasAsyncIndexerRun(root, "/foo", nonAsyncIndex)); + LuceneIndexNodeManager.hasAsyncIndexerRun(root, "/foo", nonAsyncIndex)); } private static NodeState createNRTIndex(){