mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-07-24 17:32:48 +00:00
Add WCM search with atomic indexing around snapshots
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@5712 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -278,18 +278,18 @@
|
||||
<value>org.alfresco.repo.search.IndexerAndSearcher</value>
|
||||
</property>
|
||||
<property name="defaultBinding">
|
||||
<ref bean="luceneIndexerAndSearcherFactory"></ref>
|
||||
<ref bean="admLuceneIndexerAndSearcherFactory"></ref>
|
||||
</property>
|
||||
<property name="redirectedProtocolBindings">
|
||||
<map>
|
||||
<entry key="workspace">
|
||||
<ref bean="luceneIndexerAndSearcherFactory"></ref>
|
||||
<ref bean="admLuceneIndexerAndSearcherFactory"></ref>
|
||||
</entry>
|
||||
<entry key="versionStore">
|
||||
<ref bean="luceneIndexerAndSearcherFactory"></ref>
|
||||
<ref bean="admLuceneIndexerAndSearcherFactory"></ref>
|
||||
</entry>
|
||||
<entry key="avm">
|
||||
<ref bean="luceneIndexerAndSearcherFactory"></ref>
|
||||
<ref bean="avmLuceneIndexerAndSearcherFactory"></ref>
|
||||
</entry>
|
||||
</map>
|
||||
</property>
|
||||
@@ -319,8 +319,8 @@
|
||||
|
||||
|
||||
<!-- Indexer and searchers for lucene -->
|
||||
<bean id="luceneIndexerAndSearcherFactory"
|
||||
class="org.alfresco.repo.search.impl.lucene.LuceneIndexerAndSearcherFactory2">
|
||||
<bean id="admLuceneIndexerAndSearcherFactory"
|
||||
class="org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerAndSearcherFactory">
|
||||
<property name="nodeService">
|
||||
<ref bean="mlAwareNodeService" />
|
||||
</property>
|
||||
@@ -330,9 +330,6 @@
|
||||
<property name="nameSpaceService">
|
||||
<ref bean="namespaceService" />
|
||||
</property>
|
||||
<property name="luceneFullTextSearchIndexer">
|
||||
<ref bean="LuceneFullTextSearchIndexer" />
|
||||
</property>
|
||||
<property name="indexRootLocation">
|
||||
<value>${dir.indexes}</value>
|
||||
</property>
|
||||
@@ -374,6 +371,70 @@
|
||||
</property>
|
||||
|
||||
</bean>
|
||||
|
||||
<!-- Indexer and searchers for lucene -->
|
||||
<bean id="avmLuceneIndexerAndSearcherFactory"
|
||||
class="org.alfresco.repo.search.impl.lucene.AVMLuceneIndexerAndSearcherFactory">
|
||||
<property name="nodeService">
|
||||
<ref bean="mlAwareNodeService" />
|
||||
</property>
|
||||
<property name="dictionaryService">
|
||||
<ref bean="dictionaryService" />
|
||||
</property>
|
||||
<property name="nameSpaceService">
|
||||
<ref bean="namespaceService" />
|
||||
</property>
|
||||
<property name="indexRootLocation">
|
||||
<value>${dir.indexes}</value>
|
||||
</property>
|
||||
<property name="contentService">
|
||||
<ref bean="contentService" />
|
||||
</property>
|
||||
<property name="contentStore">
|
||||
<ref bean="fileContentStore"/>
|
||||
</property>
|
||||
<property name="avmService">
|
||||
<ref bean="avmService" />
|
||||
</property>
|
||||
<property name="avmSyncService">
|
||||
<ref bean="avmSyncService" />
|
||||
</property>
|
||||
<property name="queryRegister">
|
||||
<ref bean="queryRegisterComponent" />
|
||||
</property>
|
||||
<property name="maxAtomicTransformationTime">
|
||||
<value>${lucene.maxAtomicTransformationTime}</value> <!-- milliseconds allowed for inline text transformation -->
|
||||
</property>
|
||||
<property name="queryMaxClauses">
|
||||
<value>${lucene.query.maxClauses}</value>
|
||||
</property>
|
||||
<property name="indexerBatchSize">
|
||||
<value>${lucene.indexer.batchSize}</value>
|
||||
</property>
|
||||
<property name="lockDirectory">
|
||||
<value>${dir.indexes.lock}</value>
|
||||
</property>
|
||||
<property name="indexerMaxFieldLength">
|
||||
<value>${lucene.indexer.maxFieldLength}</value>
|
||||
</property>
|
||||
<property name="writeLockTimeout">
|
||||
<value>${lucene.write.lock.timeout}</value>
|
||||
</property>
|
||||
<property name="commitLockTimeout">
|
||||
<value>${lucene.commit.lock.timeout}</value>
|
||||
</property>
|
||||
<property name="lockPollInterval">
|
||||
<value>${lucene.lock.poll.interval}</value>
|
||||
</property>
|
||||
<property name="defaultMLIndexAnalysisMode">
|
||||
<value>EXACT_LANGUAGE_AND_ALL</value>
|
||||
</property>
|
||||
<property name="defaultMLSearchAnalysisMode">
|
||||
<value>EXACT_LANGUAGE_AND_ALL</value>
|
||||
</property>
|
||||
|
||||
</bean>
|
||||
|
||||
|
||||
<!-- Indexer and searchers for lucene -->
|
||||
<bean id="luceneCategoryService" class="org.alfresco.repo.search.impl.lucene.LuceneCategoryServiceImpl">
|
||||
@@ -387,7 +448,7 @@
|
||||
<ref bean="namespaceService" />
|
||||
</property>
|
||||
<property name="indexerAndSearcher">
|
||||
<ref bean="luceneIndexerAndSearcherFactory" />
|
||||
<ref bean="indexerAndSearcherFactory" />
|
||||
</property>
|
||||
</bean>
|
||||
|
||||
@@ -681,7 +742,7 @@
|
||||
<!-- Bean to support full text search -->
|
||||
|
||||
<bean id="LuceneFullTextSearchIndexer"
|
||||
class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
|
||||
class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean" depends-on="indexerAndSearcherFactory">
|
||||
<property name="proxyInterfaces">
|
||||
<value>org.alfresco.repo.search.impl.lucene.fts.FullTextSearchIndexer</value>
|
||||
</property>
|
||||
@@ -689,11 +750,7 @@
|
||||
<ref bean="transactionManager" />
|
||||
</property>
|
||||
<property name="target">
|
||||
<bean class="org.alfresco.repo.search.impl.lucene.fts.FullTextSearchIndexerImpl">
|
||||
<property name="luceneIndexerAndSearcherFactory">
|
||||
<ref bean="luceneIndexerAndSearcherFactory" />
|
||||
</property>
|
||||
</bean>
|
||||
<ref bean="luceneFullTextSearchIndexer" />
|
||||
</property>
|
||||
<property name="transactionAttributes">
|
||||
<props>
|
||||
@@ -702,14 +759,22 @@
|
||||
</property>
|
||||
</bean>
|
||||
|
||||
<bean id="luceneFullTextSearchIndexer" class="org.alfresco.repo.search.impl.lucene.fts.FullTextSearchIndexerImpl">
|
||||
<property name="indexerAndSearcherFactory">
|
||||
<ref bean="indexerAndSearcherFactory" />
|
||||
</property>
|
||||
</bean>
|
||||
|
||||
<!-- Bean to backup Lucene indexes -->
|
||||
<bean id="luceneIndexBackupComponent"
|
||||
class="org.alfresco.repo.search.impl.lucene.LuceneIndexerAndSearcherFactory2$LuceneIndexBackupComponent">
|
||||
class="org.alfresco.repo.search.impl.lucene.AbstractLuceneIndexerAndSearcherFactory$LuceneIndexBackupComponent">
|
||||
<property name="transactionService">
|
||||
<ref bean="transactionComponent" />
|
||||
</property>
|
||||
<property name="factory">
|
||||
<ref bean="luceneIndexerAndSearcherFactory" />
|
||||
<property name="factories">
|
||||
<set>
|
||||
<ref bean="admLuceneIndexerAndSearcherFactory" />
|
||||
</set>
|
||||
</property>
|
||||
<property name="nodeService">
|
||||
<ref bean="nodeService" />
|
||||
|
@@ -9,7 +9,7 @@
|
||||
|
||||
<!-- See MLAnalysisMode for all the available options -->
|
||||
|
||||
<bean id="luceneIndexerAndSearcherFactory"
|
||||
<bean id="admLuceneIndexerAndSearcherFactory"
|
||||
class="org.alfresco.repo.search.impl.lucene.LuceneIndexerAndSearcherFactory2">
|
||||
<property name="nodeService">
|
||||
<ref bean="mlAwareNodeService" />
|
||||
@@ -20,9 +20,6 @@
|
||||
<property name="nameSpaceService">
|
||||
<ref bean="namespaceService" />
|
||||
</property>
|
||||
<property name="luceneFullTextSearchIndexer">
|
||||
<ref bean="LuceneFullTextSearchIndexer" />
|
||||
</property>
|
||||
<property name="indexRootLocation">
|
||||
<value>${dir.indexes}</value>
|
||||
</property>
|
||||
|
@@ -1,85 +0,0 @@
|
||||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN' 'http://www.springframework.org/dtd/spring-beans.dtd'>
|
||||
|
||||
<beans>
|
||||
|
||||
<!-- Indexer and searchers for lucene -->
|
||||
|
||||
<bean id="luceneIndexerAndSearcherFactory"
|
||||
class="org.alfresco.repo.search.impl.lucene.LuceneIndexerAndSearcherFactory2">
|
||||
<property name="nodeService">
|
||||
<ref bean="nodeService" />
|
||||
</property>
|
||||
<property name="dictionaryService">
|
||||
<ref bean="dictionaryService" />
|
||||
</property>
|
||||
<property name="nameSpaceService">
|
||||
<ref bean="namespaceService" />
|
||||
</property>
|
||||
<property name="luceneFullTextSearchIndexer">
|
||||
<ref bean="LuceneFullTextSearchIndexer" />
|
||||
</property>
|
||||
<property name="indexRootLocation">
|
||||
<value>${dir.indexes}</value>
|
||||
</property>
|
||||
<property name="contentService">
|
||||
<ref bean="contentService" />
|
||||
</property>
|
||||
<property name="queryRegister">
|
||||
<ref bean="queryRegisterComponent" />
|
||||
</property>
|
||||
<property name="maxAtomicTransformationTime">
|
||||
<value>${lucene.maxAtomicTransformationTime}</value>
|
||||
</property>
|
||||
<property name="queryMaxClauses">
|
||||
<value>${lucene.query.maxClauses}</value>
|
||||
</property>
|
||||
<property name="indexerBatchSize">
|
||||
<value>${lucene.indexer.batchSize}</value>
|
||||
</property>
|
||||
<property name="indexerMinMergeDocs">
|
||||
<value>${lucene.indexer.minMergeDocs}</value>
|
||||
</property>
|
||||
<property name="indexerMergeFactor">
|
||||
<value>${lucene.indexer.mergeFactor}</value>
|
||||
</property>
|
||||
<property name="indexerMaxMergeDocs">
|
||||
<value>${lucene.indexer.maxMergeDocs}</value>
|
||||
</property>
|
||||
<property name="lockDirectory">
|
||||
<value>${dir.indexes.lock}</value>
|
||||
</property>
|
||||
<property name="indexerMaxFieldLength">
|
||||
<value>${lucene.indexer.maxFieldLength}</value>
|
||||
</property>
|
||||
<property name="writeLockTimeout">
|
||||
<value>${lucene.write.lock.timeout}</value>
|
||||
</property>
|
||||
<property name="commitLockTimeout">
|
||||
<value>${lucene.commit.lock.timeout}</value>
|
||||
</property>
|
||||
<property name="lockPollInterval">
|
||||
<value>${lucene.lock.poll.interval}</value>
|
||||
</property>
|
||||
</bean>
|
||||
|
||||
|
||||
<!-- Bean to backup Lucene indexes -->
|
||||
|
||||
<bean id="luceneIndexBackupComponent"
|
||||
class="org.alfresco.repo.search.impl.lucene.LuceneIndexerAndSearcherFactory2$LuceneIndexBackupComponent">
|
||||
<property name="transactionService">
|
||||
<ref bean="transactionComponent" />
|
||||
</property>
|
||||
<property name="factory">
|
||||
<ref bean="luceneIndexerAndSearcherFactory" />
|
||||
</property>
|
||||
<property name="nodeService">
|
||||
<ref bean="nodeService" />
|
||||
</property>
|
||||
<property name="targetLocation">
|
||||
<value>${dir.root}/backup-lucene-indexes</value>
|
||||
</property>
|
||||
</bean>
|
||||
|
||||
</beans>
|
@@ -834,15 +834,41 @@
|
||||
<list>
|
||||
<value>avmServiceWriteTxnAdvisor</value>
|
||||
<value>avmServiceReadTxnAdvisor</value>
|
||||
<value>avmSnapShotTriggeredIndexingMethodInterceptor</value>
|
||||
</list>
|
||||
</property>
|
||||
</bean>
|
||||
|
||||
<bean id="indexingAVMService" class="org.springframework.aop.framework.ProxyFactoryBean">
|
||||
<property name="proxyInterfaces">
|
||||
<list>
|
||||
<value>org.alfresco.service.cmr.avm.AVMService</value>
|
||||
</list>
|
||||
</property>
|
||||
<property name="targetName">
|
||||
<value>avmService</value>
|
||||
</property>
|
||||
<property name="interceptorNames">
|
||||
<list>
|
||||
<value>avmSnapShotTriggeredIndexingMethodInterceptor</value>
|
||||
</list>
|
||||
</property>
|
||||
</bean>
|
||||
|
||||
<bean id="avmSnapShotTriggeredIndexingMethodInterceptor" class="org.alfresco.repo.search.AVMSnapShotTriggeredIndexingMethodInterceptor">
|
||||
<property name="avmService">
|
||||
<ref bean="avmService" />
|
||||
</property>
|
||||
<property name="indexerAndSearcher">
|
||||
<ref bean="avmLuceneIndexerAndSearcherFactory" />
|
||||
</property>
|
||||
</bean>
|
||||
|
||||
<!-- The AVMSyncService -->
|
||||
|
||||
<bean id="avmSyncService" class="org.alfresco.repo.avm.AVMSyncServiceImpl">
|
||||
<property name="avmService">
|
||||
<ref bean="avmService"/>
|
||||
<ref bean="indexingAVMService"/>
|
||||
</property>
|
||||
<property name="avmRepository">
|
||||
<ref bean="avmRepository"/>
|
||||
@@ -945,7 +971,7 @@
|
||||
|
||||
<bean id="deploymentService" class="org.alfresco.repo.deploy.DeploymentServiceImpl">
|
||||
<property name="avmService">
|
||||
<ref bean="avmService"/>
|
||||
<ref bean="indexingAVMService"/>
|
||||
</property>
|
||||
</bean>
|
||||
|
||||
|
@@ -135,7 +135,7 @@
|
||||
|
||||
<bean id="indexBackupJobDetail" class="org.springframework.scheduling.quartz.JobDetailBean">
|
||||
<property name="jobClass">
|
||||
<value>org.alfresco.repo.search.impl.lucene.LuceneIndexerAndSearcherFactory2$LuceneIndexBackupJob</value>
|
||||
<value>org.alfresco.repo.search.impl.lucene.AbstractLuceneIndexerAndSearcherFactory$LuceneIndexBackupJob</value>
|
||||
</property>
|
||||
<property name="jobDataAsMap">
|
||||
<map>
|
||||
|
Reference in New Issue
Block a user