You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by to...@apache.org on 2018/09/25 12:24:18 UTC
svn commit: r1841926 [1/14] - in /jackrabbit/oak/trunk:
oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/benchmark/
oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/benchmark/util/
oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/scal...
Author: tommaso
Date: Tue Sep 25 12:24:15 2018
New Revision: 1841926
URL: http://svn.apache.org/viewvc?rev=1841926&view=rev
Log:
OAK-7411 - make oak-lucene extend from oak-search
Added:
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LoggingInfoStream.java (with props)
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneDocumentMaker.java (with props)
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexDefinition.java (with props)
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexEditor.java (with props)
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexEditorContext.java (with props)
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexEditorProvider.java (with props)
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexInfoProvider.java (with props)
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexLookupUtil.java (with props)
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexNode.java (with props)
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexNodeManager.java (with props)
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexProvider.java (with props)
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexProviderService.java (with props)
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexStatistics.java (with props)
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexWriterFactory.java (with props)
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/IndexCopierClosedException.java (with props)
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneDocumentMakerTest.java (with props)
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexDefinitionTest.java (with props)
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexEditor2Test.java (with props)
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexEditorProviderTest.java (with props)
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexEditorTest.java (with props)
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexProviderServiceTest.java (with props)
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneWritesOnSegmentStatsTest.java (with props)
Removed:
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/Aggregate.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/BadIndexTracker.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/ExtractedTextCache.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/FieldNames.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexCopierClosedException.java
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/IndexFormatVersion.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/IndexNodeManager.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexPlanner.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexStatistics.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexLookup.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/NodeStateCloner.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/PropertyDefinition.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/PropertyUpdateCallback.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/ReindexOperations.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/SizeEstimator.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/TextExtractionStatsMBean.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/binary/
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/IndexUpdateListener.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/ReaderRefreshPolicy.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/RefreshOnReadPolicy.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/RefreshOnWritePolicy.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/TimedRefreshPolicy.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/indexAugment/
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/LuceneIndexWriterFactory.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/AggregateTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/ExtractedTextCacheTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/FieldNamesTest.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/NodeStateClonerTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/binary/
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/RecordingRunnable.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/RefreshOnReadPolicyTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/RefreshOnWritePolicyTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/TimedRefreshPolicyTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/FunctionIndexProcessorTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/NodeStateCopyUtilsTest.java
Modified:
jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/benchmark/HybridIndexTest.java
jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/benchmark/LucenePropertyFullTextTest.java
jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/benchmark/util/OakIndexUtils.java
jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/scalability/suites/ScalabilityNodeRelationshipSuite.java
jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/scalability/suites/ScalabilityNodeSuite.java
jackrabbit/oak/trunk/oak-examples/webapp/src/main/java/org/apache/jackrabbit/j2ee/IndexInitializer.java
jackrabbit/oak/trunk/oak-lucene/pom.xml
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/ActiveDeletedBlobCollectorMBeanImpl.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/CopyOnReadStatsMBean.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/FieldFactory.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexAugmentorFactory.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexCopier.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexTracker.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndex.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexConstants.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexMBeanImpl.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LucenePropertyIndex.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneRequestFacade.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/NodeStateAnalyzerFactory.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/OakAnalyzer.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/OakCodec.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/TermFactory.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/ActiveDeletedBlobCollectorFactory.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/BlobFactory.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/BufferedOakDirectory.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/CopyOnReadDirectory.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/CopyOnWriteDirectory.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/DefaultDirectoryFactory.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/DirectoryFactory.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/FSDirectoryFactory.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/IndexConsistencyChecker.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/IndexRootDirectory.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/LocalIndexFile.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/LuceneIndexDumper.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/LuceneIndexImporter.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/OakBufferedIndexFile.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/OakDirectory.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/OakIndexFile.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/OakIndexInput.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/OakIndexOutput.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/OakStreamingIndexFile.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/DocumentQueue.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/ExternalIndexObserver.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/LuceneJournalPropertyBuilder.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/NRTDirectoryFactory.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/NRTIndex.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/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/property/BucketSwitcher.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/property/HybridPropertyIndexLookup.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/property/LuceneIndexPropertyQuery.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/property/PropertyIndexUpdateCallback.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/reader/DefaultIndexReaderFactory.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/reader/LuceneIndexReaderFactory.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/CRTokenizer.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/CompoundWordTokenFilterBase.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/ConfigUtil.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/FacetHelper.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/FilteredSortedSetDocValuesFacetCounts.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/FunctionIndexProcessor.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/IndexDefinitionBuilder.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/LuceneIndexHelper.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/LuceneInitializerHelper.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/MoreLikeThisHelper.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/NodeStateCopyUtils.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/NodeStateFacetsConfig.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/PathStoredFieldVisitor.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/SpellcheckHelper.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/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/util/fv/SimSearchUtils.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/DefaultIndexWriter.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/DefaultIndexWriterFactory.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/IndexWriterUtils.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/LuceneIndexWriter.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/MultiplexersLucene.java
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/MultiplexingIndexWriter.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/jcr/AsyncConflictsIT.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/jcr/AtomicCounterIT.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/jcr/LuceneOakRepositoryStub.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/jcr/query/FacetTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/jcr/query/ResultSizeTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/ActiveDeletedBlobCollectorMBeanImplTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/BadIndexTrackerTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/ExcerptTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/FunctionIndexTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexCopierCleanupTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexCopierTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexNodeManagerTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexPlannerTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexStatisticsTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexTrackerTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LowCostLuceneIndexProvider.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneBlobCacheTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexAggregation2Test.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexAggregationTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexAugmentTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexDescendantSpellcheckTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexDescendantSuggestionTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexExclusionQueryTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexInfoProviderTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexLookupTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexQueryTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexSuggestionTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneIndexTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LucenePropertyIndexTest.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/NodeStateAnalyzerFactoryTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/ResultCountingIndexProvider.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/SuggestionIntervalTest.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/directory/AbstractActiveDeletedBlobTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/ActiveDeletedBlobCollectionIT.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/ActiveDeletedBlobSyncTrackerTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/BufferedOakDirectoryTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/ChunkedOakDirectoryTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/CopyOnWriteDirectoryTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/FSDirectoryFactoryTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/IndexConsistencyCheckerTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/IndexRootDirectoryTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/LuceneIndexDumperTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/LuceneIndexImporterTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/OakDirectoryTestBase.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/directory/StreamingOakDirectoryTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/DocumentQueueTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/ExternalIndexObserverTest.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/hybrid/LocalIndexWriterFactoryTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/NRTIndexFactoryTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/NRTIndexTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/hybrid/ReaderRefCountIT.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/property/HybridPropertyIndexLookupTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/property/HybridPropertyIndexStorageTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/property/LuceneIndexDeprecatedTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/property/LuceneIndexDisabledTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/property/PropertyIndexCleanerTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/property/SynchronousPropertyIndexTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/property/UniquenessConstraintValidatorTest.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/util/IndexDefinitionBuilderTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/DefaultIndexWriterTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/MultiplexersLuceneTest.java
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/MultiplexingIndexWriterTest.java
jackrabbit/oak/trunk/oak-pojosr/src/test/groovy/org/apache/jackrabbit/oak/run/osgi/LuceneSupportTest.groovy
jackrabbit/oak/trunk/oak-run/src/main/groovy/org/apache/jackrabbit/oak/console/commands/LuceneCommand.groovy
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/index/IndexHelper.java
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/LuceneIndexer.java
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/LuceneIndexerProvider.java
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/plugins/tika/TextPopulator.java
jackrabbit/oak/trunk/oak-run/src/test/java/org/apache/jackrabbit/oak/index/indexer/document/LuceneIndexerTest.java
jackrabbit/oak/trunk/oak-search-mt/src/main/java/org/apache/jackrabbit/oak/plugins/index/mt/MTFulltextQueryTermsProvider.java
jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/IndexDefinition.java
jackrabbit/oak/trunk/oak-search/src/main/java/org/apache/jackrabbit/oak/plugins/index/search/spi/query/FulltextIndexPlanner.java
Modified: jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/benchmark/HybridIndexTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/benchmark/HybridIndexTest.java?rev=1841926&r1=1841925&r2=1841926&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/benchmark/HybridIndexTest.java (original)
+++ jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/benchmark/HybridIndexTest.java Tue Sep 25 12:24:15 2018
@@ -75,6 +75,7 @@ import org.apache.jackrabbit.oak.plugins
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.util.IndexDefinitionBuilder.PropertyRule;
+import org.apache.jackrabbit.oak.plugins.index.search.FulltextIndexConstants;
import org.apache.jackrabbit.oak.spi.commit.BackgroundObserver;
import org.apache.jackrabbit.oak.spi.lifecycle.RepositoryInitializer;
import org.apache.jackrabbit.oak.spi.mount.MountInfoProvider;
@@ -497,7 +498,7 @@ public class HybridIndexTest extends Abs
defnBuilder.async("async", "async");
defnBuilder.codec("Lucene46");
defnBuilder.indexRule("nt:base")
- .property(LuceneIndexConstants.REGEX_ALL_PROPS, true)
+ .property(FulltextIndexConstants.REGEX_ALL_PROPS, true)
.nodeScopeIndex();
oakIndex.setChildNode("globalIndex", defnBuilder.build());
}
Modified: jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/benchmark/LucenePropertyFullTextTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/benchmark/LucenePropertyFullTextTest.java?rev=1841926&r1=1841925&r2=1841926&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/benchmark/LucenePropertyFullTextTest.java (original)
+++ jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/benchmark/LucenePropertyFullTextTest.java Tue Sep 25 12:24:15 2018
@@ -27,12 +27,12 @@ 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.LuceneIndexConstants.COMPAT_MODE;
-import static org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexConstants.INDEX_RULES;
-import static org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexConstants.PROP_NAME;
-import static org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexConstants.PROP_NODE;
-import static org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexConstants.PROP_PROPERTY_INDEX;
import static org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexConstants.TYPE_LUCENE;
+import static org.apache.jackrabbit.oak.plugins.index.search.FulltextIndexConstants.COMPAT_MODE;
+import static org.apache.jackrabbit.oak.plugins.index.search.FulltextIndexConstants.INDEX_RULES;
+import static org.apache.jackrabbit.oak.plugins.index.search.FulltextIndexConstants.PROP_NAME;
+import static org.apache.jackrabbit.oak.plugins.index.search.FulltextIndexConstants.PROP_NODE;
+import static org.apache.jackrabbit.oak.plugins.index.search.FulltextIndexConstants.PROP_PROPERTY_INDEX;
import java.io.File;
import java.util.Set;
Modified: jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/benchmark/util/OakIndexUtils.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/benchmark/util/OakIndexUtils.java?rev=1841926&r1=1841925&r2=1841926&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/benchmark/util/OakIndexUtils.java (original)
+++ jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/benchmark/util/OakIndexUtils.java Tue Sep 25 12:24:15 2018
@@ -24,6 +24,7 @@ import org.apache.jackrabbit.oak.plugins
import org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexConstants;
import org.apache.jackrabbit.oak.plugins.index.property.OrderedIndex;
import org.apache.jackrabbit.oak.plugins.index.property.PropertyIndexEditorProvider;
+import org.apache.jackrabbit.oak.plugins.index.search.FulltextIndexConstants;
import org.apache.jackrabbit.oak.spi.nodetype.NodeTypeConstants;
import org.jetbrains.annotations.Nullable;
@@ -310,19 +311,19 @@ public class OakIndexUtils {
IndexConstants.INDEX_DEFINITIONS_NODE_TYPE);
indexDef.setProperty(IndexConstants.TYPE_PROPERTY_NAME, LuceneIndexConstants.TYPE_LUCENE);
- indexDef.setProperty(LuceneIndexConstants.FULL_TEXT_ENABLED, false);
+ indexDef.setProperty(FulltextIndexConstants.FULL_TEXT_ENABLED, false);
if (async != null) {
indexDef.setProperty(IndexConstants.ASYNC_PROPERTY_NAME, async);
}
// Set indexed property names
- indexDef.setProperty(LuceneIndexConstants.INCLUDE_PROPERTY_NAMES, propertyNames,
+ indexDef.setProperty(FulltextIndexConstants.INCLUDE_PROPERTY_NAMES, propertyNames,
PropertyType.NAME);
- Node propsNode = JcrUtils.getOrAddNode(indexDef, LuceneIndexConstants.PROP_NODE);
+ Node propsNode = JcrUtils.getOrAddNode(indexDef, FulltextIndexConstants.PROP_NODE);
for (int i = 0; i < propertyNames.length; i++) {
Node propNode =
JcrUtils.getOrAddNode(propsNode, propertyNames[i], NodeTypeConstants.NT_OAK_UNSTRUCTURED);
- propNode.setProperty(LuceneIndexConstants.PROP_TYPE, type[i]);
+ propNode.setProperty(FulltextIndexConstants.PROP_TYPE, type[i]);
}
// Set ordered property names
@@ -332,12 +333,12 @@ public class OakIndexUtils {
.entrySet()) {
Node propNode = JcrUtils.getOrAddNode(propsNode, orderedPropEntry.getKey(),
NodeTypeConstants.NT_OAK_UNSTRUCTURED);
- propNode.setProperty(LuceneIndexConstants.PROP_TYPE,
- orderedPropEntry.getValue().get(LuceneIndexConstants.PROP_TYPE));
+ propNode.setProperty(FulltextIndexConstants.PROP_TYPE,
+ orderedPropEntry.getValue().get(FulltextIndexConstants.PROP_TYPE));
orderedProps.add(orderedPropEntry.getKey());
}
if (!orderedProps.isEmpty()) {
- indexDef.setProperty(LuceneIndexConstants.ORDERED_PROP_NAMES,
+ indexDef.setProperty(FulltextIndexConstants.ORDERED_PROP_NAMES,
orderedProps.toArray(new String[orderedProps.size()]),
PropertyType.NAME);
}
@@ -345,9 +346,9 @@ public class OakIndexUtils {
// Set file persistence if specified
if (!Strings.isNullOrEmpty(persistencePath)) {
- indexDef.setProperty(LuceneIndexConstants.PERSISTENCE_NAME,
- LuceneIndexConstants.PERSISTENCE_FILE);
- indexDef.setProperty(LuceneIndexConstants.PERSISTENCE_PATH,
+ indexDef.setProperty(FulltextIndexConstants.PERSISTENCE_NAME,
+ FulltextIndexConstants.PERSISTENCE_FILE);
+ indexDef.setProperty(FulltextIndexConstants.PERSISTENCE_PATH,
persistencePath);
}
session.save();
Modified: jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/scalability/suites/ScalabilityNodeRelationshipSuite.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/scalability/suites/ScalabilityNodeRelationshipSuite.java?rev=1841926&r1=1841925&r2=1841926&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/scalability/suites/ScalabilityNodeRelationshipSuite.java (original)
+++ jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/scalability/suites/ScalabilityNodeRelationshipSuite.java Tue Sep 25 12:24:15 2018
@@ -41,6 +41,7 @@ import org.apache.jackrabbit.commons.Jcr
import org.apache.jackrabbit.oak.benchmark.util.OakIndexUtils;
import org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexConstants;
import org.apache.jackrabbit.oak.plugins.index.property.OrderedIndex;
+import org.apache.jackrabbit.oak.plugins.index.search.FulltextIndexConstants;
import org.apache.jackrabbit.oak.spi.nodetype.NodeTypeConstants;
import org.apache.jackrabbit.oak.scalability.util.NodeTypeUtils;
import org.apache.jackrabbit.util.Text;
@@ -208,7 +209,7 @@ public class ScalabilityNodeRelationship
.valueOf(System.currentTimeMillis());
case LUCENE_DOC:
Map<String, String> propMap = Maps.newHashMap();
- propMap.put(LuceneIndexConstants.PROP_TYPE, PropertyType.TYPENAME_DATE);
+ propMap.put(FulltextIndexConstants.PROP_TYPE, PropertyType.TYPENAME_DATE);
orderedMap.put(CREATED, propMap);
case LUCENE:
OakIndexUtils.luceneIndexDefinition(session, "customIndexActivity", ASYNC_INDEX,
Modified: jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/scalability/suites/ScalabilityNodeSuite.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/scalability/suites/ScalabilityNodeSuite.java?rev=1841926&r1=1841925&r2=1841926&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/scalability/suites/ScalabilityNodeSuite.java (original)
+++ jackrabbit/oak/trunk/oak-benchmarks/src/main/java/org/apache/jackrabbit/oak/scalability/suites/ScalabilityNodeSuite.java Tue Sep 25 12:24:15 2018
@@ -55,6 +55,7 @@ import org.apache.jackrabbit.oak.plugins
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.property.OrderedIndex;
+import org.apache.jackrabbit.oak.plugins.index.search.FulltextIndexConstants;
import org.apache.jackrabbit.oak.spi.nodetype.NodeTypeConstants;
import org.apache.jackrabbit.oak.scalability.ScalabilitySuite;
import org.apache.jackrabbit.oak.scalability.benchmarks.ScalabilityBenchmark;
@@ -275,7 +276,7 @@ public class ScalabilityNodeSuite extend
.valueOf(System.currentTimeMillis());
case LUCENE_DOC:
Map<String, String> propMap = Maps.newHashMap();
- propMap.put(LuceneIndexConstants.PROP_TYPE, PropertyType.TYPENAME_DATE);
+ propMap.put(FulltextIndexConstants.PROP_TYPE, PropertyType.TYPENAME_DATE);
orderedMap.put(DATE_PROP, propMap);
case LUCENE:
OakIndexUtils.luceneIndexDefinition(session, "customIndex", ASYNC_INDEX,
Modified: jackrabbit/oak/trunk/oak-examples/webapp/src/main/java/org/apache/jackrabbit/j2ee/IndexInitializer.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-examples/webapp/src/main/java/org/apache/jackrabbit/j2ee/IndexInitializer.java?rev=1841926&r1=1841925&r2=1841926&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-examples/webapp/src/main/java/org/apache/jackrabbit/j2ee/IndexInitializer.java (original)
+++ jackrabbit/oak/trunk/oak-examples/webapp/src/main/java/org/apache/jackrabbit/j2ee/IndexInitializer.java Tue Sep 25 12:24:15 2018
@@ -35,8 +35,9 @@ import org.apache.jackrabbit.JcrConstant
import org.apache.jackrabbit.commons.JcrUtils;
import org.apache.jackrabbit.oak.api.AuthInfo;
import org.apache.jackrabbit.oak.plugins.index.IndexConstants;
-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;
import org.apache.jackrabbit.oak.spi.security.authentication.AuthInfoImpl;
import org.apache.jackrabbit.oak.spi.security.principal.AdminPrincipal;
import org.slf4j.Logger;
@@ -76,31 +77,31 @@ public class IndexInitializer {
"oak:QueryIndexDefinition", s, false);
lucene.setProperty("async", "async");
lucene.setProperty(IndexConstants.TYPE_PROPERTY_NAME, "lucene");
- lucene.setProperty(LuceneIndexConstants.EVALUATE_PATH_RESTRICTION, true);
+ lucene.setProperty(FulltextIndexConstants.EVALUATE_PATH_RESTRICTION, true);
lucene.setProperty(LuceneIndexConstants.INDEX_PATH, indexPath);
- lucene.setProperty(LuceneIndexConstants.COMPAT_MODE, IndexFormatVersion.V2.getVersion());
+ lucene.setProperty(FulltextIndexConstants.COMPAT_MODE, IndexFormatVersion.V2.getVersion());
- Node indexRules = lucene.addNode(LuceneIndexConstants.INDEX_RULES, JcrConstants.NT_UNSTRUCTURED);
+ Node indexRules = lucene.addNode(FulltextIndexConstants.INDEX_RULES, JcrConstants.NT_UNSTRUCTURED);
Node ntBaseRule = indexRules.addNode(JcrConstants.NT_BASE);
//Fulltext index only includes property of type String and Binary
- ntBaseRule.setProperty(LuceneIndexConstants.INCLUDE_PROPERTY_TYPES,
+ ntBaseRule.setProperty(FulltextIndexConstants.INCLUDE_PROPERTY_TYPES,
new String[] {PropertyType.TYPENAME_BINARY, PropertyType.TYPENAME_STRING});
- Node propNode = ntBaseRule.addNode(LuceneIndexConstants.PROP_NODE);
+ Node propNode = ntBaseRule.addNode(FulltextIndexConstants.PROP_NODE);
Node allPropNode = propNode.addNode("allProps");
- allPropNode.setProperty(LuceneIndexConstants.PROP_ANALYZED, true);
- allPropNode.setProperty(LuceneIndexConstants.PROP_NODE_SCOPE_INDEX, true);
- allPropNode.setProperty(LuceneIndexConstants.PROP_NAME, LuceneIndexConstants.REGEX_ALL_PROPS);
- allPropNode.setProperty(LuceneIndexConstants.PROP_IS_REGEX, true);
- allPropNode.setProperty(LuceneIndexConstants.PROP_USE_IN_SPELLCHECK, true);
+ allPropNode.setProperty(FulltextIndexConstants.PROP_ANALYZED, true);
+ allPropNode.setProperty(FulltextIndexConstants.PROP_NODE_SCOPE_INDEX, true);
+ allPropNode.setProperty(FulltextIndexConstants.PROP_NAME, FulltextIndexConstants.REGEX_ALL_PROPS);
+ allPropNode.setProperty(FulltextIndexConstants.PROP_IS_REGEX, true);
+ allPropNode.setProperty(FulltextIndexConstants.PROP_USE_IN_SPELLCHECK, true);
//Create aggregates for nt:file
- Node aggNode = lucene.addNode(LuceneIndexConstants.AGGREGATES);
+ Node aggNode = lucene.addNode(FulltextIndexConstants.AGGREGATES);
Node aggFile = aggNode.addNode(JcrConstants.NT_FILE);
- aggFile.addNode("include0").setProperty(LuceneIndexConstants.AGG_PATH, JcrConstants.JCR_CONTENT);
+ aggFile.addNode("include0").setProperty(FulltextIndexConstants.AGG_PATH, JcrConstants.JCR_CONTENT);
log.info("Created fulltext index definition at {}", indexPath);
}
Modified: jackrabbit/oak/trunk/oak-lucene/pom.xml
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/pom.xml?rev=1841926&r1=1841925&r2=1841926&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-lucene/pom.xml (original)
+++ jackrabbit/oak/trunk/oak-lucene/pom.xml Tue Sep 25 12:24:15 2018
@@ -121,6 +121,7 @@
*
</Import-Package>
<Embed-Dependency>
+ oak-search;inline=true,
lucene-*;inline=true,
<!-- TODO FIXME OAK-3598 -->
oak-core-spi;inline="org/apache/jackrabbit/oak/cache/AbstractCacheStats.class|org/apache/jackrabbit/oak/cache/CacheStats.class"
@@ -201,6 +202,11 @@
<artifactId>tika-core</artifactId>
<version>${tika.version}</version>
</dependency>
+ <dependency>
+ <groupId>org.apache.jackrabbit</groupId>
+ <artifactId>oak-search</artifactId>
+ <version>${project.version}</version>
+ </dependency>
<!-- Lucene dependencies -->
<dependency>
Modified: jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/ActiveDeletedBlobCollectorMBeanImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/ActiveDeletedBlobCollectorMBeanImpl.java?rev=1841926&r1=1841925&r2=1841926&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/ActiveDeletedBlobCollectorMBeanImpl.java (original)
+++ jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/ActiveDeletedBlobCollectorMBeanImpl.java Tue Sep 25 12:24:15 2018
@@ -59,7 +59,7 @@ import static org.apache.jackrabbit.oak.
import static org.apache.jackrabbit.oak.commons.jmx.ManagementOperation.done;
import static org.apache.jackrabbit.oak.commons.jmx.ManagementOperation.newManagementOperation;
import static org.apache.jackrabbit.oak.plugins.index.IndexConstants.TYPE_PROPERTY_NAME;
-import static org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexConstants.INDEX_DATA_CHILD_NAME;
+import static org.apache.jackrabbit.oak.plugins.index.search.FulltextIndexConstants.INDEX_DATA_CHILD_NAME;
import static org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexConstants.TYPE_LUCENE;
import static org.apache.jackrabbit.oak.plugins.index.lucene.directory.OakDirectory.PROP_UNSAFE_FOR_ACTIVE_DELETION;
@@ -109,7 +109,7 @@ public class ActiveDeletedBlobCollectorM
* used to purge blobs which have been deleted from lucene indexes.
* @param executor executor for running the collection task
*/
- ActiveDeletedBlobCollectorMBeanImpl(
+ public ActiveDeletedBlobCollectorMBeanImpl(
@NotNull ActiveDeletedBlobCollector activeDeletedBlobCollector,
@NotNull Whiteboard whiteboard,
@NotNull NodeStore store,
Modified: jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/CopyOnReadStatsMBean.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/CopyOnReadStatsMBean.java?rev=1841926&r1=1841925&r2=1841926&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/CopyOnReadStatsMBean.java (original)
+++ jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/CopyOnReadStatsMBean.java Tue Sep 25 12:24:15 2018
@@ -23,6 +23,9 @@ import javax.management.openmbean.Tabula
import org.osgi.annotation.versioning.ProviderType;
+/**
+ * Statistics for the copy-on-read mechanism.
+ */
@SuppressWarnings("UnusedDeclaration")
@ProviderType
public interface CopyOnReadStatsMBean {
Modified: jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/FieldFactory.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/FieldFactory.java?rev=1841926&r1=1841925&r2=1841926&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/FieldFactory.java (original)
+++ jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/FieldFactory.java Tue Sep 25 12:24:15 2018
@@ -25,27 +25,23 @@ import com.google.common.primitives.Ints
import org.apache.jackrabbit.oak.api.Blob;
import org.apache.jackrabbit.oak.api.Type;
import org.apache.jackrabbit.oak.commons.PathUtils;
-import org.apache.jackrabbit.oak.plugins.index.lucene.binary.BlobByteSource;
import org.apache.jackrabbit.oak.plugins.index.lucene.util.fv.SimSearchUtils;
+import org.apache.jackrabbit.oak.plugins.index.search.FieldNames;
+import org.apache.jackrabbit.oak.plugins.index.search.spi.binary.BlobByteSource;
import org.apache.jackrabbit.util.ISO8601;
import org.apache.lucene.document.Field;
import org.apache.lucene.document.FieldType;
import org.apache.lucene.document.IntField;
-import org.apache.lucene.document.StoredField;
import org.apache.lucene.document.StringField;
import org.apache.lucene.document.TextField;
-import static org.apache.lucene.index.FieldInfo.IndexOptions.DOCS_AND_FREQS_AND_POSITIONS;
-
-import static org.apache.jackrabbit.oak.plugins.index.lucene.FieldNames.PATH;
-import static org.apache.jackrabbit.oak.plugins.index.lucene.FieldNames.FULLTEXT;
import static org.apache.lucene.document.Field.Store.NO;
import static org.apache.lucene.document.Field.Store.YES;
+import static org.apache.lucene.index.FieldInfo.IndexOptions.DOCS_AND_FREQS_AND_POSITIONS;
import static org.apache.lucene.index.FieldInfo.IndexOptions.DOCS_AND_FREQS_AND_POSITIONS_AND_OFFSETS;
/**
- * {@code FieldFactory} is a factory for <code>Field</code> instances with
- * frequently used fields.
+ * A factory for Lucene Field instances with frequently used fields.
*/
public final class FieldFactory {
@@ -99,7 +95,7 @@ public final class FieldFactory {
}
public static Field newPathField(String path) {
- return new StringField(PATH, path, YES);
+ return new StringField(FieldNames.PATH, path, YES);
}
public static Field newPropertyField(String name, String value,
@@ -110,7 +106,7 @@ public final class FieldFactory {
return new StringField(name, value, NO);
}
- static Collection<Field> newSimilarityFields(String name, Blob value) throws IOException {
+ public static Collection<Field> newSimilarityFields(String name, Blob value) throws IOException {
Collection<Field> fields = new ArrayList<>(1);
byte[] bytes = new BlobByteSource(value).read();
// fields.add(newBinarySimilarityField(name, bytes));
@@ -118,7 +114,7 @@ public final class FieldFactory {
return fields;
}
- static Collection<Field> newSimilarityFields(String name, String value) {
+ public static Collection<Field> newSimilarityFields(String name, String value) {
Collection<Field> fields = new ArrayList<>(1);
// byte[] bytes = SimSearchUtils.toByteArray(value);
// fields.add(newBinarySimilarityField(name, bytes));
@@ -134,10 +130,6 @@ public final class FieldFactory {
return new TextField(FieldNames.createSimilarityFieldName(name), value, Field.Store.YES);
}
- private static StoredField newBinarySimilarityField(String name, byte[] bytes) {
- return new StoredField(FieldNames.createBinSimilarityFieldName(name), bytes);
- }
-
public static Field newFulltextField(String value) {
return newFulltextField(value, false);
}
@@ -147,7 +139,7 @@ public final class FieldFactory {
}
public static Field newFulltextField(String value, boolean stored) {
- return new TextField(FULLTEXT, value, stored ? YES : NO);
+ return new TextField(FieldNames.FULLTEXT, value, stored ? YES : NO);
}
public static Field newFulltextField(String name, String value, boolean stored) {
Modified: jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexAugmentorFactory.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexAugmentorFactory.java?rev=1841926&r1=1841925&r2=1841926&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexAugmentorFactory.java (original)
+++ jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexAugmentorFactory.java Tue Sep 25 12:24:15 2018
@@ -16,6 +16,11 @@
*/
package org.apache.jackrabbit.oak.plugins.index.lucene;
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.LinkedListMultimap;
@@ -42,10 +47,6 @@ import org.apache.lucene.search.Query;
import org.jetbrains.annotations.NotNull;
import org.slf4j.LoggerFactory;
-import java.util.Collections;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
@SuppressWarnings("UnusedDeclaration")
@Component
@Service(value = IndexAugmentorFactory.class)
@@ -89,7 +90,7 @@ public class IndexAugmentorFactory {
}
@NotNull
- public FulltextQueryTermsProvider getFulltextQueryTermsProvider(String nodeType) {
+ FulltextQueryTermsProvider getFulltextQueryTermsProvider(String nodeType) {
FulltextQueryTermsProvider provider = fulltextQueryTermsProviderMap.get(nodeType);
return (provider != null) ? provider : FulltextQueryTermsProvider.DEFAULT;
}
@@ -160,8 +161,8 @@ public class IndexAugmentorFactory {
indexFieldProviders.clear();
fulltextQueryTermsProviders.clear();
- indexFieldProviderMap = Collections.EMPTY_MAP;
- fulltextQueryTermsProviderMap = Collections.EMPTY_MAP;
+ indexFieldProviderMap = Collections.emptyMap();
+ fulltextQueryTermsProviderMap = Collections.emptyMap();
}
boolean isStateEmpty() {
Modified: jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexCopier.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexCopier.java?rev=1841926&r1=1841925&r2=1841926&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexCopier.java (original)
+++ jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexCopier.java Tue Sep 25 12:24:15 2018
@@ -46,11 +46,12 @@ import com.google.common.collect.Sets;
import org.apache.commons.io.FileUtils;
import org.apache.jackrabbit.oak.plugins.index.lucene.directory.CopyOnReadDirectory;
import org.apache.jackrabbit.oak.plugins.index.lucene.directory.CopyOnWriteDirectory;
-import org.apache.jackrabbit.oak.plugins.index.lucene.directory.IndexSanityChecker;
import org.apache.jackrabbit.oak.plugins.index.lucene.directory.DirectoryUtils;
import org.apache.jackrabbit.oak.plugins.index.lucene.directory.IndexRootDirectory;
+import org.apache.jackrabbit.oak.plugins.index.lucene.directory.IndexSanityChecker;
import org.apache.jackrabbit.oak.plugins.index.lucene.directory.LocalIndexDir;
import org.apache.jackrabbit.oak.plugins.index.lucene.directory.LocalIndexFile;
+import org.apache.jackrabbit.oak.plugins.index.search.IndexDefinition;
import org.apache.lucene.store.Directory;
import org.apache.lucene.store.FSDirectory;
import org.apache.lucene.store.FilterDirectory;
@@ -62,9 +63,11 @@ import static com.google.common.base.Pre
import static com.google.common.collect.Iterables.toArray;
import static com.google.common.collect.Iterables.transform;
import static com.google.common.collect.Maps.newConcurrentMap;
-import static com.google.common.collect.Maps.newHashMap;
import static org.apache.jackrabbit.oak.commons.IOUtils.humanReadableByteCount;
+/**
+ * Copies index files to/from the local disk and the datastore.
+ */
public class IndexCopier implements CopyOnReadStatsMBean, Closeable {
public static final Set<String> REMOTE_ONLY = ImmutableSet.of("segments.gen");
private static final int MAX_FAILURE_ENTRIES = 10000;
@@ -114,14 +117,14 @@ public class IndexCopier implements Copy
this.indexRootDirectory = new IndexRootDirectory(indexRootDir);
}
- public Directory wrapForRead(String indexPath, IndexDefinition definition,
+ public Directory wrapForRead(String indexPath, LuceneIndexDefinition definition,
Directory remote, String dirName) throws IOException {
Directory local = createLocalDirForIndexReader(indexPath, definition, dirName);
checkIntegrity(indexPath, local, remote);
return new CopyOnReadDirectory(this, remote, local, prefetchEnabled, indexPath, executor);
}
- public Directory wrapForWrite(IndexDefinition definition, Directory remote, boolean reindexMode, String dirName) throws IOException {
+ public Directory wrapForWrite(LuceneIndexDefinition definition, Directory remote, boolean reindexMode, String dirName) throws IOException {
Directory local = createLocalDirForIndexWriter(definition, dirName);
String indexPath = definition.getIndexPath();
checkIntegrity(indexPath, local, remote);
@@ -145,7 +148,7 @@ public class IndexCopier implements Copy
return indexRootDirectory;
}
- protected Directory createLocalDirForIndexWriter(IndexDefinition definition, String dirName) throws IOException {
+ protected Directory createLocalDirForIndexWriter(LuceneIndexDefinition definition, String dirName) throws IOException {
String indexPath = definition.getIndexPath();
File indexWriterDir = getIndexDir(definition, indexPath, dirName);
@@ -157,7 +160,7 @@ public class IndexCopier implements Copy
return dir;
}
- protected Directory createLocalDirForIndexReader(String indexPath, IndexDefinition definition, String dirName) throws IOException {
+ protected Directory createLocalDirForIndexReader(String indexPath, LuceneIndexDefinition definition, String dirName) throws IOException {
File indexDir = getIndexDir(definition, indexPath, dirName);
Directory result = FSDirectory.open(indexDir);
Modified: jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexTracker.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexTracker.java?rev=1841926&r1=1841925&r2=1841926&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexTracker.java (original)
+++ jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/IndexTracker.java Tue Sep 25 12:24:15 2018
@@ -16,27 +16,14 @@
*/
package org.apache.jackrabbit.oak.plugins.index.lucene;
-import static com.google.common.base.Preconditions.checkNotNull;
-import static com.google.common.base.Predicates.in;
-import static com.google.common.base.Predicates.not;
-import static com.google.common.base.Predicates.notNull;
-import static com.google.common.collect.Lists.newArrayListWithCapacity;
-import static com.google.common.collect.Maps.filterKeys;
-import static com.google.common.collect.Maps.filterValues;
-import static com.google.common.collect.Maps.newHashMap;
-import static java.util.Collections.emptyMap;
-import static org.apache.jackrabbit.oak.plugins.index.lucene.IndexDefinition.INDEX_DEFINITION_NODE;
-import static org.apache.jackrabbit.oak.plugins.index.lucene.IndexDefinition.STATUS_NODE;
-import static org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexConstants.PROP_REFRESH_DEFN;
-import static org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexConstants.TYPE_LUCENE;
-import static org.apache.jackrabbit.oak.plugins.index.lucene.util.LuceneIndexHelper.isLuceneIndexNode;
-import static org.apache.jackrabbit.oak.plugins.memory.EmptyNodeState.EMPTY_NODE;
-
import java.io.IOException;
import java.util.List;
import java.util.Map;
import java.util.Set;
+import com.google.common.collect.ImmutableMap;
+import com.google.common.collect.Iterables;
+import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
import org.apache.jackrabbit.oak.commons.PathUtils;
import org.apache.jackrabbit.oak.commons.PerfLogger;
@@ -44,6 +31,7 @@ import org.apache.jackrabbit.oak.plugins
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.search.BadIndexTracker;
import org.apache.jackrabbit.oak.spi.commit.CompositeEditor;
import org.apache.jackrabbit.oak.spi.commit.DefaultEditor;
import org.apache.jackrabbit.oak.spi.commit.Editor;
@@ -56,9 +44,23 @@ import org.jetbrains.annotations.Nullabl
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import com.google.common.collect.ImmutableMap;
-import com.google.common.collect.Iterables;
+import static com.google.common.base.Preconditions.checkNotNull;
+import static com.google.common.base.Predicates.in;
+import static com.google.common.base.Predicates.not;
+import static com.google.common.base.Predicates.notNull;
+import static com.google.common.collect.Lists.newArrayListWithCapacity;
+import static com.google.common.collect.Maps.newHashMap;
+import static java.util.Collections.emptyMap;
+import static org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexConstants.TYPE_LUCENE;
+import static org.apache.jackrabbit.oak.plugins.index.lucene.util.LuceneIndexHelper.isLuceneIndexNode;
+import static org.apache.jackrabbit.oak.plugins.index.search.IndexDefinition.INDEX_DEFINITION_NODE;
+import static org.apache.jackrabbit.oak.plugins.index.search.IndexDefinition.STATUS_NODE;
+import static org.apache.jackrabbit.oak.plugins.memory.EmptyNodeState.EMPTY_NODE;
+/**
+ * Keeps track of all Lucene indexes in a repository (all readers, writers, and
+ * definitions).
+ */
public class IndexTracker {
/** Logger instance. */
@@ -74,7 +76,7 @@ public class IndexTracker {
private AsyncIndexInfoService asyncIndexInfoService;
- private volatile Map<String, IndexNodeManager> indices = emptyMap();
+ private volatile Map<String, LuceneIndexNodeManager> indices = emptyMap();
private volatile boolean refresh;
@@ -82,11 +84,11 @@ public class IndexTracker {
this((IndexCopier)null);
}
- IndexTracker(IndexCopier cloner){
+ public IndexTracker(IndexCopier cloner){
this(new DefaultIndexReaderFactory(Mounts.defaultMountInfoProvider(), cloner));
}
- IndexTracker(LuceneIndexReaderFactory readerFactory) {
+ public IndexTracker(LuceneIndexReaderFactory readerFactory) {
this(readerFactory, null);
}
@@ -95,11 +97,11 @@ public class IndexTracker {
this.nrtFactory = nrtFactory;
}
- synchronized void close() {
- Map<String, IndexNodeManager> indices = this.indices;
+ public synchronized void close() {
+ Map<String, LuceneIndexNodeManager> indices = this.indices;
this.indices = emptyMap();
- for (Map.Entry<String, IndexNodeManager> entry : indices.entrySet()) {
+ for (Map.Entry<String, LuceneIndexNodeManager> entry : indices.entrySet()) {
try {
entry.getValue().close();
} catch (IOException e) {
@@ -123,7 +125,7 @@ public class IndexTracker {
this.asyncIndexInfoService = asyncIndexInfoService;
}
- AsyncIndexInfoService getAsyncIndexInfoService() {
+ public AsyncIndexInfoService getAsyncIndexInfoService() {
return asyncIndexInfoService;
}
@@ -134,8 +136,8 @@ public class IndexTracker {
return;
}
- Map<String, IndexNodeManager> original = indices;
- final Map<String, IndexNodeManager> updates = newHashMap();
+ Map<String, LuceneIndexNodeManager> original = indices;
+ final Map<String, LuceneIndexNodeManager> updates = newHashMap();
Set<String> indexPaths = Sets.newHashSet();
indexPaths.addAll(original.keySet());
@@ -149,8 +151,8 @@ public class IndexTracker {
try {
if (isStatusChanged(before, after) || isIndexDefinitionChanged(before, after)) {
long start = PERF_LOGGER.start();
- IndexNodeManager index = IndexNodeManager.open(path, root, after, readerFactory, nrtFactory);
- PERF_LOGGER.end(start, -1, "[{}] Index found to be updated. Reopening the IndexNode", path);
+ LuceneIndexNodeManager index = LuceneIndexNodeManager.open(path, root, after, readerFactory, nrtFactory);
+ PERF_LOGGER.end(start, -1, "[{}] Index found to be updated. Reopening the LuceneIndexNode", path);
updates.put(path, index); // index can be null
}
} catch (IOException e) {
@@ -164,9 +166,9 @@ public class IndexTracker {
this.root = root;
if (!updates.isEmpty()) {
- indices = ImmutableMap.<String, IndexNodeManager>builder()
- .putAll(filterKeys(original, not(in(updates.keySet()))))
- .putAll(filterValues(updates, notNull()))
+ indices = ImmutableMap.<String, LuceneIndexNodeManager>builder()
+ .putAll(Maps.filterKeys(original, not(in(updates.keySet()))))
+ .putAll(Maps.filterValues(updates, notNull()))
.build();
badIndexTracker.markGoodIndexes(updates.keySet());
@@ -176,7 +178,7 @@ public class IndexTracker {
//Given that Tracker is now invoked from a BackgroundObserver
//not a high concern
for (String path : updates.keySet()) {
- IndexNodeManager index = original.get(path);
+ LuceneIndexNodeManager index = original.get(path);
try {
if (index != null) {
index.close();
@@ -188,14 +190,14 @@ public class IndexTracker {
}
}
- void refresh() {
+ public void refresh() {
log.info("Marked tracker to refresh upon next cycle");
refresh = true;
}
- public IndexNode acquireIndexNode(String path) {
- IndexNodeManager index = indices.get(path);
- IndexNode indexNode = index != null ? index.acquire() : null;
+ public LuceneIndexNode acquireIndexNode(String path) {
+ LuceneIndexNodeManager index = indices.get(path);
+ LuceneIndexNode indexNode = index != null ? index.acquire() : null;
if (indexNode != null) {
return indexNode;
} else {
@@ -204,8 +206,8 @@ public class IndexTracker {
}
@Nullable
- public IndexDefinition getIndexDefinition(String indexPath){
- IndexNodeManager node = indices.get(indexPath);
+ public LuceneIndexDefinition getIndexDefinition(String indexPath){
+ LuceneIndexNodeManager node = indices.get(indexPath);
if (node != null){
//Accessing the definition should not require
//locking as its immutable state
@@ -214,25 +216,25 @@ public class IndexTracker {
return null;
}
- Set<String> getIndexNodePaths(){
+ public Set<String> getIndexNodePaths(){
return indices.keySet();
}
- BadIndexTracker getBadIndexTracker() {
+ public BadIndexTracker getBadIndexTracker() {
return badIndexTracker;
}
- NodeState getRoot() {
+ public NodeState getRoot() {
return root;
}
- private synchronized IndexNode findIndexNode(String path) {
+ private synchronized LuceneIndexNode findIndexNode(String path) {
// Retry the lookup from acquireIndexNode now that we're
// synchronized. The acquire() call is guaranteed to succeed
// since the close() method is also synchronized.
- IndexNodeManager index = indices.get(path);
+ LuceneIndexNodeManager index = indices.get(path);
if (index != null) {
- IndexNode indexNode = index.acquire();
+ LuceneIndexNode indexNode = index.acquire();
return checkNotNull(indexNode);
}
@@ -247,11 +249,11 @@ public class IndexTracker {
try {
if (isLuceneIndexNode(node)) {
- index = IndexNodeManager.open(path, root, node, readerFactory, nrtFactory);
+ index = LuceneIndexNodeManager.open(path, root, node, readerFactory, nrtFactory);
if (index != null) {
- IndexNode indexNode = index.acquire();
+ LuceneIndexNode indexNode = index.acquire();
checkNotNull(indexNode);
- indices = ImmutableMap.<String, IndexNodeManager>builder()
+ indices = ImmutableMap.<String, LuceneIndexNodeManager>builder()
.putAll(indices)
.put(path, index)
.build();
Added: jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LoggingInfoStream.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LoggingInfoStream.java?rev=1841926&view=auto
==============================================================================
--- jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LoggingInfoStream.java (added)
+++ jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LoggingInfoStream.java Tue Sep 25 12:24:15 2018
@@ -0,0 +1,55 @@
+/*
+ * 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.IOException;
+
+import org.apache.lucene.util.InfoStream;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public class LoggingInfoStream extends InfoStream {
+ static final String PREFIX = "oak.lucene";
+
+ public static final LoggingInfoStream INSTANCE = new LoggingInfoStream();
+
+ private LoggingInfoStream(){
+
+ }
+
+ @Override
+ public void message(String component, String message) {
+ getLog(component).debug("[{}] {}", component, message);
+ }
+
+ @Override
+ public boolean isEnabled(String component) {
+ return getLog(component).isDebugEnabled();
+ }
+
+ @Override
+ public void close() throws IOException {
+
+ }
+
+ private static Logger getLog(String component){
+ return LoggerFactory.getLogger(PREFIX + "." + component);
+ }
+}
Propchange: jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LoggingInfoStream.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneDocumentMaker.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneDocumentMaker.java?rev=1841926&view=auto
==============================================================================
--- jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneDocumentMaker.java (added)
+++ jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneDocumentMaker.java Tue Sep 25 12:24:15 2018
@@ -0,0 +1,331 @@
+/*
+ * 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.IOException;
+import java.util.List;
+
+import org.apache.jackrabbit.oak.api.Blob;
+import org.apache.jackrabbit.oak.api.PropertyState;
+import org.apache.jackrabbit.oak.api.Type;
+import org.apache.jackrabbit.oak.commons.PathUtils;
+import org.apache.jackrabbit.oak.plugins.index.lucene.util.FacetsConfigProvider;
+import org.apache.jackrabbit.oak.plugins.index.search.Aggregate;
+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.IndexFormatVersion;
+import org.apache.jackrabbit.oak.plugins.index.search.PropertyDefinition;
+import org.apache.jackrabbit.oak.plugins.index.search.spi.binary.FulltextBinaryTextExtractor;
+import org.apache.jackrabbit.oak.plugins.index.search.spi.editor.FulltextDocumentMaker;
+import org.apache.jackrabbit.oak.spi.state.NodeState;
+import org.apache.lucene.document.Document;
+import org.apache.lucene.document.DoubleDocValuesField;
+import org.apache.lucene.document.DoubleField;
+import org.apache.lucene.document.Field;
+import org.apache.lucene.document.LongField;
+import org.apache.lucene.document.NumericDocValuesField;
+import org.apache.lucene.document.SortedDocValuesField;
+import org.apache.lucene.document.StringField;
+import org.apache.lucene.facet.FacetsConfig;
+import org.apache.lucene.facet.sortedset.SortedSetDocValuesFacetField;
+import org.apache.lucene.index.IndexableField;
+import org.apache.lucene.util.BytesRef;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import static org.apache.jackrabbit.oak.plugins.index.lucene.FieldFactory.newAncestorsField;
+import static org.apache.jackrabbit.oak.plugins.index.lucene.FieldFactory.newDepthField;
+import static org.apache.jackrabbit.oak.plugins.index.lucene.FieldFactory.newFulltextField;
+import static org.apache.jackrabbit.oak.plugins.index.lucene.FieldFactory.newPathField;
+import static org.apache.jackrabbit.oak.plugins.index.lucene.FieldFactory.newPropertyField;
+
+public class LuceneDocumentMaker extends FulltextDocumentMaker<Document> {
+ private static final Logger log = LoggerFactory.getLogger(LuceneDocumentMaker.class);
+
+ private final FacetsConfigProvider facetsConfigProvider;
+ private final IndexAugmentorFactory augmentorFactory;
+
+ public LuceneDocumentMaker(@NotNull IndexDefinition definition,
+ @NotNull IndexDefinition.IndexingRule indexingRule,
+ @NotNull String path) {
+ this(null, null, null, definition, indexingRule, path);
+ }
+
+ public LuceneDocumentMaker(@Nullable FulltextBinaryTextExtractor textExtractor,
+ @Nullable FacetsConfigProvider facetsConfigProvider,
+ @Nullable IndexAugmentorFactory augmentorFactory,
+ @NotNull IndexDefinition definition,
+ @NotNull IndexDefinition.IndexingRule indexingRule,
+ @NotNull String path) {
+ super(textExtractor, definition, indexingRule, path);
+ this.facetsConfigProvider = facetsConfigProvider;
+ this.augmentorFactory = augmentorFactory;
+ }
+
+ @Override
+ protected void indexAnalyzedProperty(Document doc, String pname, String value, PropertyDefinition pd) {
+ String analyzedPropName = constructAnalyzedPropertyName(pname);
+ doc.add(newPropertyField(analyzedPropName, value, !pd.skipTokenization(pname), pd.stored));
+ }
+
+ @Override
+ protected void indexSuggestValue(Document doc, String value) {
+ doc.add(FieldFactory.newSuggestField(value));
+ }
+
+ @Override
+ protected void indexSpellcheckValue(Document doc, String value) {
+ doc.add(newPropertyField(FieldNames.SPELLCHECK, value, true, false));
+ }
+
+ @Override
+ protected void indexFulltextValue(Document doc, String value) {
+ doc.add(newFulltextField(value));
+ }
+
+ @Override
+ protected void indexAncestors(Document doc, String path) {
+ doc.add(newAncestorsField(PathUtils.getParentPath(path)));
+ doc.add(newDepthField(path));
+ }
+
+ @Override
+ protected boolean indexTypedProperty(Document doc, PropertyState property, String pname, PropertyDefinition pd) {
+ int tag = property.getType().tag();
+ boolean fieldAdded = false;
+ for (int i = 0; i < property.count(); i++) {
+ Field f;
+ if (tag == Type.LONG.tag()) {
+ f = new LongField(pname, property.getValue(Type.LONG, i), Field.Store.NO);
+ } else if (tag == Type.DATE.tag()) {
+ String date = property.getValue(Type.DATE, i);
+ f = new LongField(pname, FieldFactory.dateToLong(date), Field.Store.NO);
+ } else if (tag == Type.DOUBLE.tag()) {
+ f = new DoubleField(pname, property.getValue(Type.DOUBLE, i), Field.Store.NO);
+ } else if (tag == Type.BOOLEAN.tag()) {
+ f = new StringField(pname, property.getValue(Type.BOOLEAN, i).toString(), Field.Store.NO);
+ } else {
+ f = new StringField(pname, property.getValue(Type.STRING, i), Field.Store.NO);
+ }
+
+ if (includePropertyValue(property, i, pd)){
+ doc.add(f);
+ fieldAdded = true;
+ }
+ }
+ return fieldAdded;
+ }
+
+ @Override
+ protected void indexNotNullProperty(Document doc, PropertyDefinition pd) {
+ doc.add(new StringField(FieldNames.NOT_NULL_PROPS, pd.name, Field.Store.NO));
+ }
+
+ @Override
+ protected void indexNullProperty(Document doc, PropertyDefinition pd) {
+ doc.add(new StringField(FieldNames.NULL_PROPS, pd.name, Field.Store.NO));
+ }
+
+ private String constructAnalyzedPropertyName(String pname) {
+ if (definition.getVersion().isAtLeast(IndexFormatVersion.V2)){
+ return FieldNames.createAnalyzedFieldName(pname);
+ }
+ return pname;
+ }
+
+ @Override
+ protected boolean addBinary(Document doc, String path, List<String> binaryValues) {
+ boolean added = false;
+ for (String binaryValue : binaryValues) {
+ if (path != null) {
+ doc.add(newFulltextField(path, binaryValue, true));
+ } else {
+ doc.add(newFulltextField(binaryValue, true));
+ }
+
+ added = true;
+ }
+
+ return added;
+ }
+
+ @Override
+ protected boolean indexFacetProperty(Document doc, int tag, PropertyState property, String pname) {
+ String facetFieldName = FieldNames.createFacetFieldName(pname);
+ getFacetsConfig().setIndexFieldName(pname, facetFieldName);
+
+ boolean fieldAdded = false;
+ try {
+ if (tag == Type.STRINGS.tag() && property.isArray()) {
+ getFacetsConfig().setMultiValued(pname, true);
+ Iterable<String> values = property.getValue(Type.STRINGS);
+ for (String value : values) {
+ if (value != null && value.length() > 0) {
+ doc.add(new SortedSetDocValuesFacetField(pname, value));
+ }
+ }
+ fieldAdded = true;
+ } else if (tag == Type.STRING.tag()) {
+ String value = property.getValue(Type.STRING);
+ if (value.length() > 0) {
+ doc.add(new SortedSetDocValuesFacetField(pname, value));
+ fieldAdded = true;
+ }
+ }
+
+ } catch (Throwable e) {
+ log.warn("[{}] Ignoring facet property. Could not convert property {} of type {} to type {} for path {}",
+ getIndexName(), pname,
+ Type.fromTag(property.getType().tag(), false),
+ Type.fromTag(tag, false), path, e);
+ }
+ return fieldAdded;
+ }
+
+ @Override
+ protected void indexAggregateValue(Document doc, Aggregate.NodeIncludeResult result, String value, PropertyDefinition pd) {
+ Field field = result.isRelativeNode() ?
+ newFulltextField(result.rootIncludePath, value) : newFulltextField(value) ;
+ if (pd != null) {
+ field.setBoost(pd.boost);
+ }
+ doc.add(field);
+ }
+
+ @Override
+ protected Document initDoc() {
+ Document doc = new Document();
+ doc.add(newPathField(path));
+ return doc;
+ }
+
+ @Override
+ protected boolean augmentCustomFields(final String path, final Document doc, final NodeState document) {
+ boolean dirty = false;
+
+ if (augmentorFactory != null) {
+ Iterable<Field> augmentedFields = augmentorFactory
+ .getIndexFieldProvider(indexingRule.getNodeTypeName())
+ .getAugmentedFields(path, document, definition.getDefinitionNodeState());
+
+ for (Field field : augmentedFields) {
+ doc.add(field);
+ dirty = true;
+ }
+ }
+
+ return dirty;
+ }
+
+ @Override
+ protected Document finalizeDoc(Document doc, boolean dirty, boolean facet) throws IOException {
+ if (facet && isFacetingEnabled()) {
+ doc = getFacetsConfig().build(doc);
+ }
+
+ List<IndexableField> fields = doc.getFields();
+
+ // because of LUCENE-5833 we have to merge the suggest fields into a single one
+ Field suggestField = null;
+ for (IndexableField f : fields) {
+ if (FieldNames.SUGGEST.equals(f.name())) {
+ if (suggestField == null) {
+ suggestField = FieldFactory.newSuggestField(f.stringValue());
+ } else {
+ suggestField = FieldFactory.newSuggestField(suggestField.stringValue(), f.stringValue());
+ }
+ }
+ }
+
+ doc.removeFields(FieldNames.SUGGEST);
+ if (suggestField != null) {
+ doc.add(suggestField);
+ }
+
+ return doc;
+ }
+
+ @Override
+ protected boolean isFacetingEnabled(){
+ return facetsConfigProvider != null;
+ }
+
+ @Override
+ protected boolean indexTypeOrderedFields(Document doc, String pname, int tag, PropertyState property, PropertyDefinition pd) {
+ String name = FieldNames.createDocValFieldName(pname);
+ boolean fieldAdded = false;
+ Field f = null;
+ try {
+ if (tag == Type.LONG.tag()) {
+ //TODO Distinguish fields which need to be used for search and for sort
+ //If a field is only used for Sort then it can be stored with less precision
+ f = new NumericDocValuesField(name, property.getValue(Type.LONG));
+ } else if (tag == Type.DATE.tag()) {
+ String date = property.getValue(Type.DATE);
+ f = new NumericDocValuesField(name, FieldFactory.dateToLong(date));
+ } else if (tag == Type.DOUBLE.tag()) {
+ f = new DoubleDocValuesField(name, property.getValue(Type.DOUBLE));
+ } else if (tag == Type.BOOLEAN.tag()) {
+ f = new SortedDocValuesField(name,
+ new BytesRef(property.getValue(Type.BOOLEAN).toString()));
+ } else if (tag == Type.STRING.tag()) {
+ f = new SortedDocValuesField(name,
+ new BytesRef(property.getValue(Type.STRING)));
+ }
+
+ if (f != null && includePropertyValue(property, 0, pd)) {
+ doc.add(f);
+ fieldAdded = true;
+ }
+ } catch (Exception e) {
+ log.warn(
+ "[{}] Ignoring ordered property. Could not convert property {} of type {} to type {} for path {}",
+ getIndexName(), pname,
+ Type.fromTag(property.getType().tag(), false),
+ Type.fromTag(tag, false), path, e);
+ }
+ return fieldAdded;
+ }
+
+ private FacetsConfig getFacetsConfig(){
+ return facetsConfigProvider.getFacetsConfig();
+ }
+
+ @Override
+ protected void indexNodeName(Document doc, String value) {
+ doc.add(new StringField(FieldNames.NODE_NAME, value, Field.Store.NO));
+ }
+
+ @Override
+ protected void indexSimilarityStrings(Document doc, PropertyDefinition pd, String value) throws IOException {
+ for (Field f : FieldFactory.newSimilarityFields(pd.name, value)) {
+ doc.add(f);
+ }
+ }
+
+ @Override
+ protected void indexSimilarityBinaries(Document doc, PropertyDefinition pd, Blob blob) throws IOException {
+ for (Field f : FieldFactory.newSimilarityFields(pd.name, blob)) {
+ doc.add(f);
+ }
+ }
+}
\ No newline at end of file
Propchange: jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneDocumentMaker.java
------------------------------------------------------------------------------
svn:eol-style = native