cancel
Showing results for 
Search instead for 
Did you mean: 

[Résolu] Impossible de relancer Alfresco : lucene

dranakan
Champ on-the-rise
Champ on-the-rise
Hello,

J'ai un problème pour redémarré mon Alfresco 😞 (il est aussi posté sur le forum en… mais j'ai pas trouvé de solution pour l'instant : http://forums.alfresco.com/en/viewtopic.php?f=9&t=23092)
Traduction :

J'ai récemment ajouté plusieurs documents pour des tests ("ls -R * | wc -w" in contentStore gives 216010) mais Alfresco (3.0 (Stable 1526) schema 1002 with DB Ingres 9.2) ne redémarre plus 😞

Je pense à un manque de mémoire… j'espère que ce n'est pas le cas…

Avec 3 GB JAVA_OPTS argument pour la JVM (http://wiki.alfresco.com/wiki/JVM_Tuning) sont :
export JAVA_OPTS='-server -Xcomp -Xbatch -Xss1024K -Xms1G -Xmx2g -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode -XX:NewSize=512m -XX:MaxPermSize=128M -XX:CMSInitiatingOccupancyFraction=80'

Avant de démarrer Alfresco, l'utilisation de la mémoire est :
[alfresco@localhost Alfresco3]$ free -m
             total       used       free     shared    buffers     cached
Mem:          2971        834       2137          0         31        681
-/+ buffers/cache:        121       2849
Swap:         3059        858       2200

catalina.out

INFO: Stopping Coyote HTTP/1.1 on http-8080
CompilerOracle: exclude org/apache/lucene/index/IndexReader$1.doBody
CompilerOracle: exclude org/alfresco/repo/search/impl/lucene/index/IndexInfo$Merger.mergeIndexes
CompilerOracle: exclude org/alfresco/repo/search/impl/lucene/index/IndexInfo$Merger.mergeDeletions
Nov 9, 2009 1:49:57 PM org.apache.coyote.http11.Http11Protocol init
INFO: Initializing Coyote HTTP/1.1 on http-8080
Nov 9, 2009 1:49:58 PM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 4734 ms
Nov 9, 2009 1:49:59 PM org.apache.catalina.core.StandardService start
INFO: Starting service Catalina
Nov 9, 2009 1:49:59 PM org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/6.0.18
Nov 9, 2009 1:49:59 PM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deploying web application archive alfresco.war
Nov 9, 2009 1:50:09 PM org.apache.catalina.core.StandardContext addApplicationListener
INFO: The listener "org.apache.myfaces.webapp.StartupServletContextListener" is already configured for this context. The duplicate definition has been ignored.
13:50:55,969  ERROR [transform.magick.AbstractImageMagickContentTransformer] ImageMagickContentTransformer not available: Failed to perform ImageMagick transformation:
Execution result:
   os:         Linux
   command:    [/usr/local/bin/convert, /opt/Alfresco3/tomcat/temp/Alfresco/ImageMagickContentTransformer_init_source_676250879432461320.gif, /opt/Alfresco3/tomcat/temp/Alfresco/ImageMagickContentTransformer_init_target_3815583309748912250.png]
   succeeded:  false
   exit code:  1
   out:
   err:        Cannot run program "/usr/local/bin/convert": java.io.IOException: error=2, No such file or directory
13:51:03,562  INFO  [config.xml.XMLConfigService$PropertyConfigurer] Loading properties file from class path resource [alfresco/file-servers.properties]
13:51:07,841  DEBUG [alfresco.repo.jscript] preRegister called. Server=com.sun.jmx.mbeanserver.JmxMBeanServer@1af2a9c, name=log4j:logger=org.alfresco.repo.jscript
13:51:07,843  DEBUG [ch.custom.manageoffice] preRegister called. Server=com.sun.jmx.mbeanserver.JmxMBeanServer@1af2a9c, name=log4j:logger=ch.custom.manageoffice
13:51:20,642  ERROR [content.transform.RuntimeExecutableContentTransformer] Failed to start a runtime executable content transformer:
Execution result:
   os:         Linux
   command:    [/opt/Alfresco3/bin/pdf2swf, -V]
   succeeded:  false
   exit code:  1
   out:
   err:        Cannot run program "/opt/Alfresco3/bin/pdf2swf": java.io.IOException: error=2, No such file or directory
13:51:38,132  INFO  [domain.schema.SchemaBootstrap] Schema managed by database dialect org.hibernate.dialect.IngresDialect.
13:51:38,190  INFO  [domain.schema.SchemaBootstrap] Bypassing schema update checks.
### Excluding compile: org.apache.lucene.index.IndexReader$1::doBody
13:52:51,677  ERROR [web.context.ContextLoader] Context initialization failed
java.lang.RuntimeException: Error during run with lock.
at org.alfresco.repo.search.impl.lucene.index.IndexInfo.doWithFileLock(IndexInfo.java:2251)
        at org.alfresco.repo.search.impl.lucene.index.IndexInfo.<init>(IndexInfo.java:557)
        at org.alfresco.repo.search.impl.lucene.index.IndexInfo.getIndexInfo(IndexInfo.java:351)
        at org.alfresco.repo.search.impl.lucene.AbstractLuceneBase.initialise(AbstractLuceneBase.java:106)
        at org.alfresco.repo.search.impl.lucene.ADMLuceneSearcherImpl.getSearcher(ADMLuceneSearcherImpl.java:129)
        at org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerAndSearcherFactory.getSearcher(ADMLuceneIndexerAndSearcherFactory.java:116)
        at org.alfresco.repo.search.impl.lucene.AbstractLuceneIndexerAndSearcherFactory.getSearcher(AbstractLuceneIndexerAndSearcherFactory.java:463)
        at org.alfresco.repo.search.impl.lucene.AbstractLuceneIndexerAndSearcherFactory.getSearcher(AbstractLuceneIndexerAndSearcherFactory.java:87)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.alfresco.repo.service.StoreRedirectorProxyFactory$RedirectorInvocationHandler.invoke(StoreRedirectorProxyFactory.java:221)
        at $Proxy27.getSearcher(Unknown Source)
        at org.alfresco.repo.search.SearcherComponent.selectNodes(SearcherComponent.java:107)
        at org.alfresco.repo.search.AbstractSearcherComponent.selectNodes(AbstractSearcherComponent.java:77)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:296)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:177)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:144)
        at net.sf.acegisecurity.intercept.method.aopalliance.MethodSecurityInterceptor.invoke(MethodSecurityInterceptor.java:80)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:166)
        at org.alfresco.repo.security.permissions.impl.ExceptionTranslatorMethodInterceptor.invoke(ExceptionTranslatorMethodInterceptor.java:49)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:166)
        at org.alfresco.repo.audit.AuditComponentImpl.audit(AuditComponentImpl.java:275)
        at org.alfresco.repo.audit.AuditMethodInterceptor.invoke(AuditMethodInterceptor.java:69)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:166)
        at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:166)
        at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
        at $Proxy20.selectNodes(Unknown Source)
        at org.alfresco.repo.dictionary.DictionaryRepositoryBootstrap.initDictionary(DictionaryRepositoryBootstrap.java:242)
        at org.alfresco.repo.dictionary.DictionaryRepositoryBootstrap$1.execute(DictionaryRepositoryBootstrap.java:207)
        at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:320)
        at org.alfresco.repo.dictionary.DictionaryRepositoryBootstrap.init(DictionaryRepositoryBootstrap.java:203)
        at org.alfresco.repo.dictionary.DictionaryRepositoryBootstrap$2.doWork(DictionaryRepositoryBootstrap.java:395)
        at org.alfresco.repo.security.authentication.AuthenticationUtil.runAs(AuthenticationUtil.java:437)
        at org.alfresco.repo.dictionary.DictionaryRepositoryBootstrap.onBootstrap(DictionaryRepositoryBootstrap.java:391)
        at org.alfresco.util.AbstractLifecycleBean.onApplicationEvent(AbstractLifecycleBean.java:62)
        at org.springframework.context.event.SimpleApplicationEventMulticaster$1.run(SimpleApplicationEventMulticaster.java:77)
        at org.springframework.core.task.SyncTaskExecutor.execute(SyncTaskExecutor.java:49)
        at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:75)
at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:246)
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:355)
        at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:244)
        at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:187)
        at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49)
        at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3843)
        at org.apache.catalina.core.StandardContext.start(StandardContext.java:4342)
        at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
        at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
        at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
        at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:830)
        at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:719)
        at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:490)
        at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1149)
        at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
        at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
        at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
        at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
        at org.apache.catalina.core.StandardService.start(StandardService.java:516)
        at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
        at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
Caused by: java.lang.OutOfMemoryError: Java heap space
        at org.apache.lucene.store.RAMFile.addBuffer(RAMFile.java:63)
        at org.apache.lucene.store.RAMOutputStream.flushBuffer(RAMOutputStream.java:80)
        at org.apache.lucene.store.BufferedIndexOutput.flush(BufferedIndexOutput.java:85)
        at org.apache.lucene.store.BufferedIndexOutput.writeBytes(BufferedIndexOutput.java:53)
        at org.apache.lucene.store.Directory.copy(Directory.java:172)
        at org.apache.lucene.store.RAMDirectory.<init>(RAMDirectory.java:73)
        at org.apache.lucene.store.RAMDirectory.<init>(RAMDirectory.java:84)
        at org.alfresco.repo.search.impl.lucene.index.IndexInfo.buildReferenceCountingIndexReader(IndexInfo.java:1926)
        at org.alfresco.repo.search.impl.lucene.index.IndexInfo.access$1200(IndexInfo.java:127)
        at org.alfresco.repo.search.impl.lucene.index.IndexInfo$2.doWork(IndexInfo.java:618)
        at org.alfresco.repo.search.impl.lucene.index.IndexInfo.doWithFileLock(IndexInfo.java:2320)
        at org.alfresco.repo.search.impl.lucene.index.IndexInfo.doWithFileLock(IndexInfo.java:2240)
        at org.alfresco.repo.search.impl.lucene.index.IndexInfo.<init>(IndexInfo.java:557)
        at org.alfresco.repo.search.impl.lucene.index.IndexInfo.getIndexInfo(IndexInfo.java:351)
        at org.alfresco.repo.search.impl.lucene.AbstractLuceneBase.initialise(AbstractLuceneBase.java:106)
        at org.alfresco.repo.search.impl.lucene.ADMLuceneSearcherImpl.getSearcher(ADMLuceneSearcherImpl.java:129)
        at org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerAndSearcherFactory.getSearcher(ADMLuceneIndexerAndSearcherFactory.java:116)
        at org.alfresco.repo.search.impl.lucene.AbstractLuceneIndexerAndSearcherFactory.getSearcher(AbstractLuceneIndexerAndSearcherFactory.java:463)
        at org.alfresco.repo.search.impl.lucene.AbstractLuceneIndexerAndSearcherFactory.getSearcher(AbstractLuceneIndexerAndSearcherFactory.java:87)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.alfresco.repo.service.StoreRedirectorProxyFactory$RedirectorInvocationHandler.invoke(StoreRedirectorProxyFactory.java:221)
        at $Proxy27.getSearcher(Unknown Source)
        at org.alfresco.repo.search.SearcherComponent.selectNodes(SearcherComponent.java:107)
        at org.alfresco.repo.search.AbstractSearcherComponent.selectNodes(AbstractSearcherComponent.java:77)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:296)
Nov 9, 2009 1:52:51 PM org.apache.catalina.core.StandardContext start
SEVERE: Error listenerStart
Nov 9, 2009 1:52:52 PM org.apache.catalina.core.StandardContext start
SEVERE: Context [/alfresco] startup failed due to previous errors
log4j:ERROR LogMananger.repositorySelector was null likely due to error in class reloading, using NOPLoggerRepository.
Nov 9, 2009 1:52:59 PM org.apache.coyote.http11.Http11Protocol start
INFO: Starting Coyote HTTP/1.1 on http-8080
Nov 9, 2009 1:52:59 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 181209 ms


J'ai testé avec différents arguments (dont le -Xss jusqu'à 8m (après, il y a un autre style d'erreur)

Que puis-je faire ?
La quantité de mémoire nécessaire dépend du nombre de document   :?:
Je ne peut pas augment la mémoire de la JVM à plus de 2G car j'utilise une machine sur 32bits (limitation of the JVM).
Merci.
9 REPLIES 9

sylv1
Champ in-the-making
Champ in-the-making
Bonjour  :wink: ,

Vu la commande, je pense que c'est sous Linux.

I found I was getting java.lang.OutOfMemoryError: Java heap space errors in the logs and the bootstrap process repeatedly failed. This turned out to be because the JAVA_OPTS environment variable was being exported in the /etc/init.d/alfresco script and was not being seen when starting the JVM. I added this to /opt/alfresco/tomcat/bin/setenv.sh

Vu sur http://wiki.alfresco.com/wiki/Installing_Alfresco_on_Ubuntu_8.04 .

Est-ce que le fait de mettre la config tomcat change quelque chose ?

@+  Smiley Happy .

dranakan
Champ on-the-rise
Champ on-the-rise
Merci Sylv1,

J'ai essayé de définir le JRE_HOME mais cela ne change rien.
Note : mon Alfresco fonctionnait avant l'ajout d'une masse de fichiers. Je pense que le problème est ailleurs car la JVM prend en compte les paramètres JAVA_OPTS.

Merci.

dranakan
Champ on-the-rise
Champ on-the-rise
Hello,

J'ai essayé d'augmenter le Xmx jusqu'à  2600mb (je ne pouvais pas plus). Mais aucune amélioration…

Quand je démarre Alfresco avec :
='-server -Xcomp -Xbatch -Xss1m -Xms1g -Xmx2000m -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode -XX:NewSize=512m -XX:MaxPermSize=512M -XX:CMSInitiatingOccupancyFraction=80'
Avant d'avoir l'erreur, le log indique :


16:40:25,278  INFO  [domain.schema.SchemaBootstrap] Schema managed by database dialect org.hibernate.dialect.IngresDialect.
16:40:25,345  INFO  [domain.schema.SchemaBootstrap] Bypassing schema update checks.
### Excluding compile: org.apache.lucene.index.IndexReader$1::doBody

La mémoire disponible avant le crash :
[alfresco@localhost Alfresco3]$ watch free -m
Every 2.0s: free -m                                                                                                                  Mon Nov 23 16:41:37 2009

             total       used       free     shared    buffers     cached
Mem:          2971       2884         87          0          1        644
-/+ buffers/cache:       2238        733
Swap:         3059        328       2731

Il y a 733m de mémoire disponible avant le Java Heap Space error… Pourquoi j'ai ce Java Heap Space alors ?

Merci 🙂
——-
Détails de mon installation (sur VMware):
uname -a
Linux localhost.localdomain 2.6.18-92.el5 #1 SMP Tue Apr 29 13:16:12 EDT 2008 i686 i686 i386 GNU/Linux

rguinot
Confirmed Champ
Confirmed Champ
Que se passe-t-il si vous mettez

lucene.indexer.maxDocsForInMemoryMerge=0 
dans votre repository.properties ?

dranakan
Champ on-the-rise
Champ on-the-rise
Hello Rguinot,

Merci pour votre aide.

En mettant cette ligne dans /opt/Alfresco3/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/repository.properties

Je ne vois aucune différence :


INFO: Server startup in 176040 ms
Nov 27, 2009 1:25:47 PM org.apache.coyote.http11.Http11Protocol pause
INFO: Pausing Coyote HTTP/1.1 on http-8080
Nov 27, 2009 1:25:48 PM org.apache.catalina.core.StandardService stop
INFO: Stopping service Catalina
Nov 27, 2009 1:25:49 PM org.apache.coyote.http11.Http11Protocol destroy
INFO: Stopping Coyote HTTP/1.1 on http-8080
Nov 27, 2009 1:26:00 PM org.apache.coyote.http11.Http11Protocol init
INFO: Initializing Coyote HTTP/1.1 on http-8080
Nov 27, 2009 1:26:01 PM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 4700 ms
Nov 27, 2009 1:26:02 PM org.apache.catalina.core.StandardService start
INFO: Starting service Catalina
Nov 27, 2009 1:26:02 PM org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/6.0.18
Nov 27, 2009 1:26:02 PM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deploying web application archive alfresco.war
Nov 27, 2009 1:26:11 PM org.apache.catalina.core.StandardContext addApplicationListener
INFO: The listener "org.apache.myfaces.webapp.StartupServletContextListener" is already configured for this context. The duplicate definition has been ignored.
13:26:57,457  ERROR [transform.magick.AbstractImageMagickContentTransformer] ImageMagickContentTransformer not available: Failed to perform ImageMagick transformation:
Execution result:
   os:         Linux
   command:    [/usr/local/bin/convert, /opt/Alfresco3/tomcat/temp/Alfresco/ImageMagickContentTransformer_init_source_6302739872820838113.gif, /opt/Alfresco3/tomcat/temp/Alfresco/ImageMagickContentTransformer_init_target_7214676010994919748.png]
   succeeded:  false
   exit code:  1
   out:
   err:        Cannot run program "/usr/local/bin/convert": java.io.IOException: error=2, No such file or directory
13:27:04,927  INFO  [config.xml.XMLConfigService$PropertyConfigurer] Loading properties file from class path resource [alfresco/file-servers.properties]
13:27:08,146  DEBUG [alfresco.repo.jscript] preRegister called. Server=com.sun.jmx.mbeanserver.JmxMBeanServer@5e3371, name=log4j:logger=org.alfresco.repo.jscript
13:27:08,148  DEBUG [ch.custom.manageoffice] preRegister called. Server=com.sun.jmx.mbeanserver.JmxMBeanServer@5e3371, name=log4j:logger=ch.custom.manageoffice
13:27:20,250  ERROR [content.transform.RuntimeExecutableContentTransformer] Failed to start a runtime executable content transformer:
Execution result:
   os:         Linux
   command:    [/opt/Alfresco3/bin/pdf2swf, -V]
   succeeded:  false
   exit code:  1
   out:
   err:        Cannot run program "/opt/Alfresco3/bin/pdf2swf": java.io.IOException: error=2, No such file or directory
13:27:37,206  INFO  [domain.schema.SchemaBootstrap] Schema managed by database dialect org.hibernate.dialect.IngresDialect.
13:27:37,265  INFO  [domain.schema.SchemaBootstrap] Bypassing schema update checks.
13:28:35,155  ERROR [web.context.ContextLoader] Context initialization failed
java.lang.RuntimeException: Error during run with lock.
        at org.alfresco.repo.search.impl.lucene.index.IndexInfo.doWithFileLock(IndexInfo.java:2251)
        at org.alfresco.repo.search.impl.lucene.index.IndexInfo.<init>(IndexInfo.java:557)
        at org.alfresco.repo.search.impl.lucene.index.IndexInfo.getIndexInfo(IndexInfo.java:351)
        at org.alfresco.repo.search.impl.lucene.AbstractLuceneBase.initialise(AbstractLuceneBase.java:106)
        at org.alfresco.repo.search.impl.lucene.ADMLuceneSearcherImpl.getSearcher(ADMLuceneSearcherImpl.java:129)
        at org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerAndSearcherFactory.getSearcher(ADMLuceneIndexerAndSearcherFactory.java:116)
        at org.alfresco.repo.search.impl.lucene.AbstractLuceneIndexerAndSearcherFactory.getSearcher(AbstractLuceneIndexerAndSearcherFactory.java:463)
        at org.alfresco.repo.search.impl.lucene.AbstractLuceneIndexerAndSearcherFactory.getSearcher(AbstractLuceneIndexerAndSearcherFactory.java:87)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.alfresco.repo.service.StoreRedirectorProxyFactory$RedirectorInvocationHandler.invoke(StoreRedirectorProxyFactory.java:221)
        at $Proxy27.getSearcher(Unknown Source)
        at org.alfresco.repo.search.SearcherComponent.selectNodes(SearcherComponent.java:107)
        at org.alfresco.repo.search.AbstractSearcherComponent.selectNodes(AbstractSearcherComponent.java:77)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:296)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:177)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:144)
        at net.sf.acegisecurity.intercept.method.aopalliance.MethodSecurityInterceptor.invoke(MethodSecurityInterceptor.java:80)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:166)
        at org.alfresco.repo.security.permissions.impl.ExceptionTranslatorMethodInterceptor.invoke(ExceptionTranslatorMethodInterceptor.java:49)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:166)
        at org.alfresco.repo.audit.AuditComponentImpl.audit(AuditComponentImpl.java:275)
        at org.alfresco.repo.audit.AuditMethodInterceptor.invoke(AuditMethodInterceptor.java:69)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:166)
        at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:166)
        at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
        at $Proxy20.selectNodes(Unknown Source)
        at org.alfresco.repo.dictionary.DictionaryRepositoryBootstrap.initDictionary(DictionaryRepositoryBootstrap.java:242)
        at org.alfresco.repo.dictionary.DictionaryRepositoryBootstrap$1.execute(DictionaryRepositoryBootstrap.java:207)
        at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:320)
        at org.alfresco.repo.dictionary.DictionaryRepositoryBootstrap.init(DictionaryRepositoryBootstrap.java:203)
        at org.alfresco.repo.dictionary.DictionaryRepositoryBootstrap$2.doWork(DictionaryRepositoryBootstrap.java:395)
        at org.alfresco.repo.security.authentication.AuthenticationUtil.runAs(AuthenticationUtil.java:437)
        at org.alfresco.repo.dictionary.DictionaryRepositoryBootstrap.onBootstrap(DictionaryRepositoryBootstrap.java:391)
        at org.alfresco.util.AbstractLifecycleBean.onApplicationEvent(AbstractLifecycleBean.java:62)
        at org.springframework.context.event.SimpleApplicationEventMulticaster$1.run(SimpleApplicationEventMulticaster.java:77)
        at org.springframework.core.task.SyncTaskExecutor.execute(SyncTaskExecutor.java:49)
        at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:75)
        at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:246)
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:355)
        at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:244)
        at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:187)
        at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49)
        at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3843)
        at org.apache.catalina.core.StandardContext.start(StandardContext.java:4342)
        at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
        at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
        at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
        at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:830)
        at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:719)
        at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:490)
        at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1149)
        at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
        at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
        at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
        at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
        at org.apache.catalina.core.StandardService.start(StandardService.java:516)
        at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
        at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
Caused by: java.lang.OutOfMemoryError: Java heap space
        at org.apache.lucene.store.RAMFile.addBuffer(RAMFile.java:63)
        at org.apache.lucene.store.RAMOutputStream.flushBuffer(RAMOutputStream.java:80)
        at org.apache.lucene.store.BufferedIndexOutput.flush(BufferedIndexOutput.java:85)
        at org.apache.lucene.store.BufferedIndexOutput.writeBytes(BufferedIndexOutput.java:53)
        at org.apache.lucene.store.Directory.copy(Directory.java:172)
        at org.apache.lucene.store.RAMDirectory.<init>(RAMDirectory.java:73)
        at org.apache.lucene.store.RAMDirectory.<init>(RAMDirectory.java:84)
        at org.alfresco.repo.search.impl.lucene.index.IndexInfo.buildReferenceCountingIndexReader(IndexInfo.java:1926)
        at org.alfresco.repo.search.impl.lucene.index.IndexInfo.access$1200(IndexInfo.java:127)
        at org.alfresco.repo.search.impl.lucene.index.IndexInfo$2.doWork(IndexInfo.java:618)
        at org.alfresco.repo.search.impl.lucene.index.IndexInfo.doWithFileLock(IndexInfo.java:2320)
        at org.alfresco.repo.search.impl.lucene.index.IndexInfo.doWithFileLock(IndexInfo.java:2240)
        at org.alfresco.repo.search.impl.lucene.index.IndexInfo.<init>(IndexInfo.java:557)
        at org.alfresco.repo.search.impl.lucene.index.IndexInfo.getIndexInfo(IndexInfo.java:351)
        at org.alfresco.repo.search.impl.lucene.AbstractLuceneBase.initialise(AbstractLuceneBase.java:106)
        at org.alfresco.repo.search.impl.lucene.ADMLuceneSearcherImpl.getSearcher(ADMLuceneSearcherImpl.java:129)
        at org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerAndSearcherFactory.getSearcher(ADMLuceneIndexerAndSearcherFactory.java:116)
        at org.alfresco.repo.search.impl.lucene.AbstractLuceneIndexerAndSearcherFactory.getSearcher(AbstractLuceneIndexerAndSearcherFactory.java:463)
        at org.alfresco.repo.search.impl.lucene.AbstractLuceneIndexerAndSearcherFactory.getSearcher(AbstractLuceneIndexerAndSearcherFactory.java:87)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.alfresco.repo.service.StoreRedirectorProxyFactory$RedirectorInvocationHandler.invoke(StoreRedirectorProxyFactory.java:221)
        at $Proxy27.getSearcher(Unknown Source)
        at org.alfresco.repo.search.SearcherComponent.selectNodes(SearcherComponent.java:107)
        at org.alfresco.repo.search.AbstractSearcherComponent.selectNodes(AbstractSearcherComponent.java:77)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:296)
Nov 27, 2009 1:28:35 PM org.apache.catalina.core.StandardContext start
SEVERE: Error listenerStart
Nov 27, 2009 1:28:35 PM org.apache.catalina.core.StandardContext start
SEVERE: Context [/alfresco] startup failed due to previous errors
log4j:ERROR LogMananger.repositorySelector was null likely due to error in class reloading, using NOPLoggerRepository.
Nov 27, 2009 1:28:42 PM org.apache.coyote.http11.Http11Protocol start
INFO: Starting Coyote HTTP/1.1 on http-8080
Nov 27, 2009 1:28:43 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 161626 ms

Voulez-vous que j'essaie d'autres configurations ?

Merci

rguinot
Confirmed Champ
Confirmed Champ
Bonjour,
Il semble qu'en 3.0 cette propriété ne soit pas injectée via spring.
Pour corriger celà, il vous faut surcharger cette propriété dans la définition du bean admLuceneIndexerAndSearcherFactory, dans un fichier d'extension nommé par exemple custom-lucene-indexer-context.xml que vous devez créer comme suit :

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN' 'http://www.springframework.org/dtd/spring-beans.dtd'>

<!– Core and miscellaneous bean definitions –>
<beans>
  <bean id="admLuceneIndexerAndSearcherFactory"
        class="org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerAndSearcherFactory">
        <property name="nodeService">
            <ref bean="mlAwareNodeService" />
        </property>
        <property name="tenantService">
            <ref bean="tenantService"/>
        </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="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>

   <!–  Our custom property   –>
   <property name="maxDocsForInMemoryMerge">
            <value>${lucene.indexer.maxDocsForInMemoryMerge}</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>
      <property name="threadPoolExecutor">
         <ref bean="indexThreadPoolExecutor"></ref>
      </property>
        <property name="bulkLoader">
   <ref bean="hibernateL1CacheBulkLoader"></ref>
      </property>
      <!– over-ride to false for pre 3.0 behaviour –>
      <property name="postSortDateTime">
         <value>true</value>
      </property>
   </bean>
</beans>

En gardant la propriété de tout à l'heure dans custom-repository.properties, ça devrait fonctionner. Tenez nous au courant. Pour info, cette propriété définit le nombre de docs qu'il va fusionner en mémoire en une seule fois dans l'index principal. En la positionnant à 0, il passer systématiquement par le filesystem, ça sera plus lent, mais ne devrait pas jeter d'exception. Si ça fonctionne , vous pouvez tester de la réaugmenter petit à petit pour l'adpater à votre environnement.

dranakan
Champ on-the-rise
Champ on-the-rise
Hello,

Merci beaucoup, le serveur a pu redémarrer 🙂 !

Que ce soit en 3.0 ou 3.2, je peux sans autre utiliser une machine 32 bits sous Linux ?
(la limitation de la JVM est fixée à 2 GO, je ne risque pas (dans quelques années, après un grand nombre de documents) d'être dans l'impossibilité de redémarrer Alfresco)

Merci

rguinot
Confirmed Champ
Confirmed Champ
De rien,
Relisez votre question par contre, elle n'est vraiment pas claire Smiley Happy

dranakan
Champ on-the-rise
Champ on-the-rise
>>Relisez votre question par contre, elle n'est vraiment pas claire Smiley Happy
Je reformule…

D'après http://wiki.alfresco.com/wiki/Repository_Hardware
(Managed Heap + native heap + (thread stack size * number of threads)) cannot exceed 2GB on 32bit x86 Windows or Linux systems.

La JVM ne dépasse pas les 2GO de RAM sur un system 32bit x86.

Dans le problème présenté ici, Lucene a demandé beaucoup de mémoire dès qu'il devait gérer un grande nombre de documents, mais on a pu, en changeant sa configuration, faire en sorte qu'il ne manque pas de mémoire vive. Y a-t-il un risque qu'un autre service d'Alfresco demande une certaine quantité de mémoire dépassant les 2GO que peut fournir une architecture 32 bits (et que l'on ne peut pas éviter en modifiant la configuration) ?

Si c'est le cas, nous devons prévoir une machine 64 bits pour ne pas obtenir une erreur de type Java Heap Space à l'avenir (ainsi, on peut ajouter de la mémoire physique et elle sera prise en compte).

Merci