AnsweredAssumed Answered

Limite du répertoire lucene-index atteinte.

Question asked by xfa18 on Mar 25, 2009
Latest reply on Mar 27, 2009 by xfa18
Bonjour,

Je vous expose notre problème pour savoir si des personnes l'ont déjà rencontré et qu'elle a été leur solution.
En premier lieu l'architecture : Le serveur Alfresco est un alfresco communautaire 2.1 installé sur un os Debain Lenny. La base de données est hébergé sur un serveur MySQL. Le système de fichiers est en ext3
Depuis hier nous rencontrons des problèmes pour créer/modifier/supprimer des fichiers ou des espaces de travail sur notre serveur.

org.alfresco.error.AlfrescoRuntimeException: Unknown Exception in Transaction.
        at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:292)
        at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:174)
        at org.alfresco.repo.webdav.WebDAVMethod.execute(WebDAVMethod.java:152)
        at org.alfresco.repo.webdav.WebDAVServlet.service(WebDAVServlet.java:129)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
        at org.alfresco.repo.webdav.auth.AuthenticationFilter.doFilter(AuthenticationFilter.java:290)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)
        at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
        at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
        at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
        at java.lang.Thread.run(Thread.java:595)
Caused by: javax.transaction.RollbackException: Transaction didn't commit: Failed to prepare: requires rollback
        at org.alfresco.util.transaction.SpringAwareUserTransaction.commit(SpringAwareUserTransaction.java:430)
        at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:239)
        … 21 more
Caused by: org.alfresco.repo.search.IndexerException: Failed to prepare: requires rollback
        at org.alfresco.repo.search.impl.lucene.AbstractLuceneIndexerAndSearcherFactory.prepare(AbstractLuceneIndexerAndSearcherFactory.java:684)
        at org.alfresco.repo.transaction.AlfrescoTransactionSupport$TransactionSynchronizationImpl.beforeCommit(AlfrescoTransactionSupport.java:634)
        at org.springframework.transaction.support.TransactionSynchronizationUtils.triggerBeforeCommit(TransactionSynchronizationUtils.java:48)
        at org.springframework.transaction.support.AbstractPlatformTransactionManager.triggerBeforeCommit(AbstractPlatformTransactionManager.java:821)
        at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:637)
        at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:624)
        at org.springframework.transaction.interceptor.TransactionAspectSupport.commitTransactionAfterReturning(TransactionAspectSupport.java:307)
        at org.alfresco.util.transaction.SpringAwareUserTransaction.commit(SpringAwareUserTransaction.java:420)
        … 22 more
Caused by: org.alfresco.repo.search.IndexerException: Invalid state MARKED_ROLLBACK
        at org.alfresco.repo.search.impl.lucene.index.IndexInfo.getTransition(IndexInfo.java:1171)
        at org.alfresco.repo.search.impl.lucene.index.IndexInfo.setStatus(IndexInfo.java:1099)
        at org.alfresco.repo.search.impl.lucene.AbstractLuceneBase.setStatus(AbstractLuceneBase.java:256)
        at org.alfresco.repo.search.impl.lucene.AbstractLuceneIndexerImpl.setRollbackOnly(AbstractLuceneIndexerImpl.java:549)
        at org.alfresco.repo.search.impl.lucene.AbstractLuceneIndexerImpl.prepare(AbstractLuceneIndexerImpl.java:484)
        at org.alfresco.repo.search.impl.lucene.AbstractLuceneIndexerAndSearcherFactory.prepare(AbstractLuceneIndexerAndSearcherFactory.java:679)
        … 29 more
Après recherche et analyse de logs, le répertoire lucene-index contient 32000 sous répertoires. Nous avons donc atteint la limite du système.

D'après le forum, il faut mettre la reindexation à FULL et relancer Alfresco. Y-a-t-il des risques ? Des personnes ont-elles déjà effectuées cette manipulation sans problème (Nous avons 31 G0 de données) ?

Deuxième point, pour éviter ce problème dans l'avenir, quelles sont les solutions ? Peut-on séparer les indexes dans plusieurs répertoires ?

Merci de votre aide et de vos réponses.

Outcomes