Alfresco utilise la CPU à 100% depuis plusieurs jours

cancel
Showing results for 
Search instead for 
Did you mean: 
dranakan
Active Member

Alfresco utilise la CPU à 100% depuis plusieurs jours

Hello,

J'ai besoin de votre aide. Sur un serveur qui est fonctionnel depuis plus d'un mois, Alfresco utilise, depuis quelques jours, la CPU à 100%. Je ne sais pas trop comment résoudre ce problème. J'utilise Alfresco 32.r2 (2440) avec Mysql (5.0.77 Source distribution)

J'ai effectué deux jstack (aperçu des processus java qui tournent) :

2010-03-01 14:10:04 : http://www.megaupload.com/?d=YO72F2ZE ou sur Jira: https://issues.alfresco.com/jira/secure/attachment/17070/jstack_alfresco_2010-03-01_141004.log

2010-03-02 07:57:11  : http://www.megaupload.com/?d=NWO1NQCH ou sur Jira https://issues.alfresco.com/jira/secure/attachment/17071/jstack_alfresco_2010-03-02_075711.log

TOP
top - 08:04:30 up 33 days,  8:21,  1 user,  load average: 1.00, 1.02, 1.04
Tasks:  57 total,   1 running,  56 sleeping,   0 stopped,   0 zombie
Cpu(s): 33.3%us, 23.5%sy,  0.0%ni, 43.0%id,  0.1%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   2097328k total,  1365344k used,   731984k free,    47776k buffers
Swap:  1081336k total,   119020k used,   962316k free,   869476k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
2120 alfresco  18   0 1453m 359m 4316 S 99.9 17.5   1073:58 java


Dans les logs, rien de particulier, sauf, ci-dessous, mais cela n'est plus apparu depuis que j'ai redémarrer Alfresco. :
12:19:22,012  ERROR [org.alfresco.fileserver] org.alfresco.jlan.netbios.NetBIOSException: NBREQ Called name is not this server (GED)
12:19:22,013  ERROR [org.alfresco.fileserver]   at org.alfresco.jlan.smb.server.SMBSrvSession.procNetBIOSSessionRequest(SMBSrvSession.java:881)
12:19:22,013  ERROR [org.alfresco.fileserver]   at org.alfresco.jlan.smb.server.SMBSrvSession.processPacket(SMBSrvSession.java:1446)
12:19:22,013  ERROR [org.alfresco.fileserver]   at org.alfresco.jlan.smb.server.nio.NIOCIFSThreadRequest.runRequest(NIOCIFSThreadRequest.java:111)
12:19:22,013  ERROR [org.alfresco.fileserver]   at org.alfresco.jlan.server.thread.ThreadRequestPool$ThreadWorker.run(ThreadRequestPool.java:141)
12:19:22,013  ERROR [org.alfresco.fileserver]   at java.lang.Thread.run(Thread.java:619)
12:19:22,013  ERROR [org.alfresco.fileserver] org.alfresco.jlan.netbios.NetBIOSException: NBREQ Called name is not this server (GED)
12:19:22,013  ERROR [org.alfresco.fileserver]   at org.alfresco.jlan.smb.server.SMBSrvSession.procNetBIOSSessionRequest(SMBSrvSession.java:881)
12:19:22,013  ERROR [org.alfresco.fileserver]   at org.alfresco.jlan.smb.server.SMBSrvSession.processPacket(SMBSrvSession.java:1446)
12:19:22,013  ERROR [org.alfresco.fileserver]   at org.alfresco.jlan.smb.server.nio.NIOCIFSThreadRequest.runRequest(NIOCIFSThreadRequest.java:111)
12:19:22,013  ERROR [org.alfresco.fileserver]   at org.alfresco.jlan.server.thread.ThreadRequestPool$ThreadWorker.run(ThreadRequestPool.java:141)
12:19:22,013  ERROR [org.alfresco.fileserver]   at java.lang.Thread.run(Thread.java:619)
12:19:26,419  ERROR [repo.action.AsynchronousActionExecutionQueueImpl] Failed to execute asynchronous action: Action[ id=f9cacddb-0c61-418a-bd8d-3a5a1d6c79bc, node=workspace://SpacesStore/f9cacddb-0c61-418a-bd8d-3a5a1d6c79bc ]
org.hibernate.exception.GenericJDBCException: could not load an entity: [org.alfresco.repo.domain.hibernate.NodeImpl#11931]
        at org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:103)
        at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:91)
        at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
        at org.hibernate.loader.Loader.loadEntity(Loader.java:1874)
        at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:48)
        at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:42)
        at org.hibernate.persister.entity.AbstractEntityPersister.load(AbstractEntityPersister.java:3049)
        at org.hibernate.event.def.DefaultLoadEventListener.loadFromDatasource(DefaultLoadEventListener.java:399)
        at org.hibernate.event.def.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java:375)
        at org.hibernate.event.def.DefaultLoadEventListener.load(DefaultLoadEventListener.java:139)
        at org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:195)
        at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:103)
        at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:878)
        at org.hibernate.impl.SessionImpl.get(SessionImpl.java:815)
        at org.hibernate.impl.SessionImpl.get(SessionImpl.java:808)
        at org.alfresco.repo.node.db.hibernate.HibernateNodeDaoServiceImpl.getNodeOrNull(HibernateNodeDaoServiceImpl.java:797)
        at org.alfresco.repo.node.db.hibernate.HibernateNodeDaoServiceImpl.getNodePair(HibernateNodeDaoServiceImpl.java:1185)
        at sun.reflect.GeneratedMethodAccessor212.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
..
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: No operations allowed after connection closed.Connection was implicitly closed due to underlying exception/error:

** BEGIN NESTED EXCEPTION **

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException
MESSAGE: The last packet successfully received from the server was237098 milliseconds ago.The last packet sent successfully to the server was 237098 milliseconds ago, which  is longer than the server configured value of 'wait_timeout'. You should consider either expiring and/or testing connection validity before use in your application, increasing the server configured values for client timeouts, or using the Connector/J connection property 'autoReconnect=true' to avoid this problem.

STACKTRACE:

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: The last packet successfully received from the server was237098 milliseconds ago.The last packet sent successfully to the server was 237098 milliseconds ago, which  is longer than the server configured value of 'wait_timeout'. You should consider either expiring and/or testing connection validity before use in your application, increasing the server configured values for client timeouts, or using the Connector/J connection property 'autoReconnect=true' to avoid this problem.
        at sun.reflect.GeneratedConstructorAccessor371.newInstance(Unknown Source)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
        at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
        at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1074)
        at com.mysql.jdbc.MysqlIO.send(MysqlIO.java:3270)
        at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1932)
        at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2101)
        at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2554)
        at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1761)
        at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:1912)
        at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:93)
        at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:93)
        at org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:186)
        at org.hibernate.loader.Loader.getResultSet(Loader.java:1787)
        at org.hibernate.loader.Loader.doQuery(Loader.java:674)
        at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:236)
        at org.hibernate.loader.Loader.loadEntity(Loader.java:1860)
        at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:48)
        at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:42)
        at org.hibernate.persister.entity.AbstractEntityPersister.load(AbstractEntityPersister.java:3049)
        at org.hibernate.event.def.DefaultLoadEventListener.loadFromDatasource(DefaultLoadEventListener.java:399)

t org.hibernate.event.def.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java:375)
        at org.hibernate.event.def.DefaultLoadEventListener.load(DefaultLoadEventListener.java:139)
        at org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:195)
        at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:103)
        at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:878)
        at org.hibernate.impl.SessionImpl.get(SessionImpl.java:815)
        at org.hibernate.impl.SessionImpl.get(SessionImpl.java:808)
        at org.alfresco.repo.node.db.hibernate.HibernateNodeDaoServiceImpl.getNodeOrNull(HibernateNodeDaoServiceImpl.java:797)
        at org.alfresco.repo.node.db.hibernate.HibernateNodeDaoServiceImpl.getNodePair(HibernateNodeDaoServiceImpl.java:1185)
        at sun.reflect.GeneratedMethodAccessor212.invoke(Unknown Source)
        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:304)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
        at org.alfresco.repo.transaction.TransactionalDaoInterceptor.invoke(TransactionalDaoInterceptor.java:68)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
        at org.alfresco.repo.domain.hibernate.DirtySessionMethodInterceptor.invoke(DirtySessionMethodInterceptor.java:419)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
        at org.alfresco.repo.transaction.SingleEntryTransactionResourceInterceptor.invokeInternal(SingleEntryTransactionResourceInterceptor.java:169)
        at org.alfresco.repo.transaction.SingleEntryTransactionResourceInterceptor.invoke(SingleEntryTransactionResourceInterceptor.java:138)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
        at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
        at $Proxy9.getNodePair(Unknown Source)
        at org.alfresco.repo.node.db.DbNodeServiceImpl.exists(DbNodeServiceImpl.java:170)
        at sun.reflect.GeneratedMethodAccessor341.invoke(Unknown Source)
        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:304)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
        at org.alfresco.repo.tenant.MultiTNodeServiceInterceptor.invoke(MultiTNodeServiceInterceptor.java:110)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
        at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
        at $Proxy11.exists(Unknown Source)
        at sun.reflect.GeneratedMethodAccessor341.invoke(Unknown Source)
        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 $Proxy12.exists(Unknown Source)
        at sun.reflect.GeneratedMethodAccessor341.invoke(Unknown Source)
        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:304)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
        at org.alfresco.repo.node.MLPropertyInterceptor.invoke(MLPropertyInterceptor.java:306)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
        at org.alfresco.repo.node.MLPropertyInterceptor.invoke(MLPropertyInterceptor.java:306)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)

at org.alfresco.repo.node.NodeRefPropertyMethodInterceptor.invoke(NodeRefPropertyMethodInterceptor.java:274)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
        at org.alfresco.repo.node.NodeRefPropertyMethodInterceptor.invoke(NodeRefPropertyMethodInterceptor.java:274)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
        at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
        at $Proxy11.exists(Unknown Source)
        at org.alfresco.repo.action.evaluator.ComparePropertyValueEvaluator.evaluateImpl(ComparePropertyValueEvaluator.java:179)
        at org.alfresco.repo.action.evaluator.CompareMimeTypeEvaluator.evaluateImpl(CompareMimeTypeEvaluator.java:90)
        at org.alfresco.repo.action.evaluator.ActionConditionEvaluatorAbstractBase.evaluate(ActionConditionEvaluatorAbstractBase.java:97)
        at org.alfresco.repo.action.ActionServiceImpl.evaluateSimpleCondition(ActionServiceImpl.java:490)
        at org.alfresco.repo.action.ActionServiceImpl.evaluateActionCondition(ActionServiceImpl.java:478)
        at org.alfresco.repo.action.ActionServiceImpl.evaluateAction(ActionServiceImpl.java:399)
        at org.alfresco.repo.action.ActionServiceImpl.executeActionImpl(ActionServiceImpl.java:645)
        at org.alfresco.repo.action.AsynchronousActionExecutionQueueImpl$ActionExecutionWrapper$1$1.execute(AsynchronousActionExecutionQueueImpl.java:369)
        at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:327)
        at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:234)
        at org.alfresco.repo.action.AsynchronousActionExecutionQueueImpl$ActionExecutionWrapper$1.doWork(AsynchronousActionExecutionQueueImpl.java:378)
        at org.alfresco.repo.security.authentication.AuthenticationUtil.runAs(AuthenticationUtil.java:514)
        at org.alfresco.repo.action.AsynchronousActionExecutionQueueImpl$ActionExecutionWrapper.run(AsynchronousActionExecutionQueueImpl.java:381)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:619)
Caused by: java.net.SocketException: Broken pipe
        at java.net.SocketOutputStream.socketWrite0(Native Method)
        at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92)
        at java.net.SocketOutputStream.write(SocketOutputStream.java:136)
        at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:65)
        at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:123)
        at com.mysql.jdbc.MysqlIO.send(MysqlIO.java:3251)
        … 88 more


** END NESTED EXCEPTION **


        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
        at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
        at com.mysql.jdbc.Util.getInstance(Util.java:381)
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:984)
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:926)
        at com.mysql.jdbc.ConnectionImpl.checkClosed(ConnectionImpl.java:1115)
        at com.mysql.jdbc.ConnectionImpl.prepareStatement(ConnectionImpl.java:4111)
        at com.mysql.jdbc.ConnectionImpl.prepareStatement(ConnectionImpl.java:4077)
        at org.apache.commons.dbcp.PoolingConnection.makeObject(PoolingConnection.java:193)
        at org.apache.commons.pool.impl.GenericKeyedObjectPool.borrowObject(GenericKeyedObjectPool.java:964)
        at org.apache.commons.dbcp.PoolingConnection.prepareStatement(PoolingConnection.java:92)
        … 85 more

Quelqu'un a une idée de mon problème ?

Merci bien :-)

(posté aussi sur le forum EN : http://forums.alfresco.com/en/viewtopic.php?f=8&t=21348&p=82506#p82506)
(sur Jira : https://issues.alfresco.com/jira/browse/ALF-1918)
22 Replies
rguinot
Customer

Re: Alfresco utilise la CPU à 100% depuis plusieurs jours

pas mal de problème dans votre install apparemment.. mauvaise configuration  cifs, problème d'accès à la base (est elle down ? ) …

cet outil vous permet de déterminer l'utilisation cpu des threads les plus consommatrices de cpu, ça vous donnera sans doute plus d'infos sur la cause : http://weblogs.java.net/blog/brucechapman/archive/2008/03/hot_threads.html
dranakan
Active Member

Re: Alfresco utilise la CPU à 100% depuis plusieurs jours

Merci bien :-)

La base fonctionne… Je n'ai plus eu le message d'erreur précédent (avec NetBIOSException et mysql) depuis mon redémarrage (il y a 2 jours). La CPU continue a chauffer la pièce…

Voici ma config pour le cifs (/opt/Alfresco/tomcat/shared/classes/alfresco-global.properties). Elle fonctionne bien sur d'autres installations (RHEL 5.2, ici on est avec une centos 5.4)…
# CIFS
cifs.enabled=true
cifs.ServerName=${localname}
cifs.domain=xxxxx
cifs.hostanounce=true

cifs.broadcast=0.0.0.0
cifs.tcpipSMB.port=1445
cifs.ipv6.enabled=false
cifs.netBIOSSMB.namePort=1137
cifs.netBIOSSMB.datagramPort=1138
cifs.netBIOSSMB.sessionPort=1139

J'ai tenté d'utiliser le programme de votre lien, mais comme indiqué dans un commentaire (le premier), cela ne fonctionne pas directement avec Linux. J'ai tenté aussi un "top -H" puis jstack du processus qui utilise la CPU, mais cela n'a pas fonctionné.
[root@localhost lib]# /usr/java/jdk1.6.0_16/bin/java -classpath /usr/java/jdk1.6.0_16/lib/ -jar /media/lienVersPartage/HotThread.jar 25744
Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/tools/attach/VirtualMachine
        at hotthread.Main.main(Main.java:52)
Caused by: java.lang.ClassNotFoundException: com.sun.tools.attach.VirtualMachine
        at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
        … 1 more
J'ai essayé avec et sans spécifier le classpath. Le tools.jar (contenant com.sun.tools.attach.VirtualMachine) est présent dans /usr/java/jdk1.6.0_16/lib/

La config du CIFS semble-t-elle être erronée  :?:
Avez-vous la bonne commande pour lancer le HotThread sous Linux  :?:
Merci
rguinot
Customer

Re: Alfresco utilise la CPU à 100% depuis plusieurs jours

Fonctionne très bien sous Linux si.
Voici un exemple :

java -classpath $JAVA_HOME/lib/tools.jar:HotThreads.jar hotthread.Main 10454

ou dans votre cas si JAVA_HOME n'est pas défini :

java -classpath/usr/java/jdk1.6.0_16/lib/tools.jar:HotThreads.jar hotthread.Main 10454
dranakan
Active Member

Re: Alfresco utilise la CPU à 100% depuis plusieurs jours

Merci pour la commande.
Voici mon résultat :


50.0% CPU Usage by Thread 'DefaultScheduler_Worker-3'
  4/10 snapshots sharing following 41 elements
    java.io.BufferedInputStream.read1(BufferedInputStream.java:256)
    java.io.BufferedInputStream.read(BufferedInputStream.java:317)
    java.io.BufferedInputStream.read1(BufferedInputStream.java:256)
    java.io.BufferedInputStream.read(BufferedInputStream.java:317)
    java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
    java.io.BufferedInputStream.read(BufferedInputStream.java:237)
    java.io.FilterInputStream.read(FilterInputStream.java:66)
    java.io.PushbackInputStream.read(PushbackInputStream.java:122)
    org.apache.pdfbox.io.PushBackInputStream.read(PushBackInputStream.java:84)
    org.apache.pdfbox.pdfparser.BaseParser.skipSpaces(BaseParser.java:1190)
    org.apache.pdfbox.pdfparser.BaseParser.parseCOSDictionary(BaseParser.java:188)
    org.apache.pdfbox.pdfparser.BaseParser.parseDirObject(BaseParser.java:870)
    org.apache.pdfbox.pdfparser.BaseParser.parseCOSDictionaryValue(BaseParser.java:141)
    org.apache.pdfbox.pdfparser.BaseParser.parseCOSDictionary(BaseParser.java:213)
    org.apache.pdfbox.pdfparser.BaseParser.parseDirObject(BaseParser.java:870)
    org.apache.pdfbox.pdfparser.PDFParser.parseObject(PDFParser.java:519)
    org.apache.pdfbox.pdfparser.PDFParser.parse(PDFParser.java:179)
    org.apache.pdfbox.pdmodel.PDDocument.load(PDDocument.java:841)
    org.apache.pdfbox.pdmodel.PDDocument.load(PDDocument.java:808)
    org.alfresco.repo.content.transform.PdfBoxContentTransformer.transformInternal(PdfBoxContentTransformer.java:74)
    org.alfresco.repo.content.transform.AbstractContentTransformer2.transform(AbstractContentTransformer2.java:167)
    org.alfresco.repo.content.transform.AbstractContentTransformer2.transform(AbstractContentTransformer2.java:143)
    org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerImpl.indexProperty(ADMLuceneIndexerImpl.java:948)
    org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerImpl.createDocumentsImpl(ADMLuceneIndexerImpl.java:625)
    org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerImpl.createDocuments(ADMLuceneIndexerImpl.java:590)
    org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerImpl.updateFullTextSearch(ADMLuceneIndexerImpl.java:1569)
    org.alfresco.repo.search.impl.lucene.fts.FullTextSearchIndexerImpl.index(FullTextSearchIndexerImpl.java:190)
    sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    java.lang.reflect.Method.invoke(Method.java:597)
    org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:304)
    org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
    org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
    org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
    org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
    $Proxy70.index(Unknown Source)
    org.alfresco.repo.search.impl.lucene.fts.FTSIndexerJob.execute(FTSIndexerJob.java:52)
    org.quartz.core.JobRunShell.run(JobRunShell.java:202)
    org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
  2/10 snapshots sharing following 49 elements
    sun.nio.ch.FileDispatcher.read0(Native Method)
    sun.nio.ch.FileDispatcher.read(FileDispatcher.java:26)
    sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:233)
    sun.nio.ch.IOUtil.read(IOUtil.java:206)
    sun.nio.ch.FileChannelImpl.read(FileChannelImpl.java:144)
    org.alfresco.repo.content.AbstractContentAccessor$CallbackFileChannel.read(AbstractContentAccessor.java:422)
    sun.nio.ch.ChannelInputStream.read(ChannelInputStream.java:48)
    sun.nio.ch.ChannelInputStream.read(ChannelInputStream.java:92)
    sun.nio.ch.ChannelInputStream.read(ChannelInputStream.java:86)
    java.io.BufferedInputStream.read1(BufferedInputStream.java:256)
    java.io.BufferedInputStream.read(BufferedInputStream.java:317)
    java.io.BufferedInputStream.read1(BufferedInputStream.java:256)
    java.io.BufferedInputStream.read(BufferedInputStream.java:317)
    java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
    java.io.BufferedInputStream.read(BufferedInputStream.java:237)
    java.io.FilterInputStream.read(FilterInputStream.java:66)
    java.io.PushbackInputStream.read(PushbackInputStream.java:122)
    org.apache.pdfbox.io.PushBackInputStream.read(PushBackInputStream.java:84)
    org.apache.pdfbox.pdfparser.BaseParser.parseCOSDictionary(BaseParser.java:200)
    org.apache.pdfbox.pdfparser.BaseParser.parseDirObject(BaseParser.java:870)
    org.apache.pdfbox.pdfparser.BaseParser.parseCOSDictionaryValue(BaseParser.java:141)
    org.apache.pdfbox.pdfparser.BaseParser.parseCOSDictionary(BaseParser.java:213)
    org.apache.pdfbox.pdfparser.BaseParser.parseDirObject(BaseParser.java:870)
    org.apache.pdfbox.pdfparser.PDFParser.parseObject(PDFParser.java:519)
    org.apache.pdfbox.pdfparser.PDFParser.parse(PDFParser.java:179)
    org.apache.pdfbox.pdmodel.PDDocument.load(PDDocument.java:841)
    org.apache.pdfbox.pdmodel.PDDocument.load(PDDocument.java:808)
    org.alfresco.repo.content.transform.PdfBoxContentTransformer.transformInternal(PdfBoxContentTransformer.java:74)
    org.alfresco.repo.content.transform.AbstractContentTransformer2.transform(AbstractContentTransformer2.java:167)
    org.alfresco.repo.content.transform.AbstractContentTransformer2.transform(AbstractContentTransformer2.java:143)
    org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerImpl.indexProperty(ADMLuceneIndexerImpl.java:948)
    org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerImpl.createDocumentsImpl(ADMLuceneIndexerImpl.java:625)
    org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerImpl.createDocuments(ADMLuceneIndexerImpl.java:590)
    org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerImpl.updateFullTextSearch(ADMLuceneIndexerImpl.java:1569)
    org.alfresco.repo.search.impl.lucene.fts.FullTextSearchIndexerImpl.index(FullTextSearchIndexerImpl.java:190)
    sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    java.lang.reflect.Method.invoke(Method.java:597)
    org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:304)
    org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
    org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
    org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
    org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
    $Proxy70.index(Unknown Source)
    org.alfresco.repo.search.impl.lucene.fts.FTSIndexerJob.execute(FTSIndexerJob.java:52)
    org.quartz.core.JobRunShell.run(JobRunShell.java:202)
    org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
  2/10 snapshots sharing following 50 elements
    sun.nio.ch.FileDispatcher.read0(Native Method)
    sun.nio.ch.FileDispatcher.read(FileDispatcher.java:26)
    sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:233)
    sun.nio.ch.IOUtil.read(IOUtil.java:206)
    sun.nio.ch.FileChannelImpl.read(FileChannelImpl.java:144)
    org.alfresco.repo.content.AbstractContentAccessor$CallbackFileChannel.read(AbstractContentAccessor.java:422)
    sun.nio.ch.ChannelInputStream.read(ChannelInputStream.java:48)
    sun.nio.ch.ChannelInputStream.read(ChannelInputStream.java:92)
    sun.nio.ch.ChannelInputStream.read(ChannelInputStream.java:86)
    java.io.BufferedInputStream.read1(BufferedInputStream.java:256)
    java.io.BufferedInputStream.read(BufferedInputStream.java:317)
    java.io.BufferedInputStream.read1(BufferedInputStream.java:256)
    java.io.BufferedInputStream.read(BufferedInputStream.java:317)
    java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
    java.io.BufferedInputStream.read(BufferedInputStream.java:237)
    java.io.FilterInputStream.read(FilterInputStream.java:66)
    java.io.PushbackInputStream.read(PushbackInputStream.java:122)
    org.apache.pdfbox.io.PushBackInputStream.read(PushBackInputStream.java:84)
    org.apache.pdfbox.io.PushBackInputStream.peek(PushBackInputStream.java:62)
    org.apache.pdfbox.pdfparser.BaseParser.parseCOSDictionary(BaseParser.java:189)
    org.apache.pdfbox.pdfparser.BaseParser.parseDirObject(BaseParser.java:870)
    org.apache.pdfbox.pdfparser.BaseParser.parseCOSDictionaryValue(BaseParser.java:141)
    org.apache.pdfbox.pdfparser.BaseParser.parseCOSDictionary(BaseParser.java:213)
    org.apache.pdfbox.pdfparser.BaseParser.parseDirObject(BaseParser.java:870)
    org.apache.pdfbox.pdfparser.PDFParser.parseObject(PDFParser.java:519)
    org.apache.pdfbox.pdfparser.PDFParser.parse(PDFParser.java:179)
    org.apache.pdfbox.pdmodel.PDDocument.load(PDDocument.java:841)
    org.apache.pdfbox.pdmodel.PDDocument.load(PDDocument.java:808)
    org.alfresco.repo.content.transform.PdfBoxContentTransformer.transformInternal(PdfBoxContentTransformer.java:74)
    org.alfresco.repo.content.transform.AbstractContentTransformer2.transform(AbstractContentTransformer2.java:167)
    org.alfresco.repo.content.transform.AbstractContentTransformer2.transform(AbstractContentTransformer2.java:143)
    org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerImpl.indexProperty(ADMLuceneIndexerImpl.java:948)
    org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerImpl.createDocumentsImpl(ADMLuceneIndexerImpl.java:625)
    org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerImpl.createDocuments(ADMLuceneIndexerImpl.java:590)
    org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerImpl.updateFullTextSearch(ADMLuceneIndexerImpl.java:1569)
    org.alfresco.repo.search.impl.lucene.fts.FullTextSearchIndexerImpl.index(FullTextSearchIndexerImpl.java:190)
    sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    java.lang.reflect.Method.invoke(Method.java:597)
    org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:304)
    org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
    org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
    org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
    org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
    $Proxy70.index(Unknown Source)
    org.alfresco.repo.search.impl.lucene.fts.FTSIndexerJob.execute(FTSIndexerJob.java:52)
    org.quartz.core.JobRunShell.run(JobRunShell.java:202)
    org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
  2/10 snapshots sharing following 30 elements
    org.apache.pdfbox.pdfparser.BaseParser.parseDirObject(BaseParser.java:870)
    org.apache.pdfbox.pdfparser.BaseParser.parseCOSDictionaryValue(BaseParser.java:141)
    org.apache.pdfbox.pdfparser.BaseParser.parseCOSDictionary(BaseParser.java:213)
    org.apache.pdfbox.pdfparser.BaseParser.parseDirObject(BaseParser.java:870)
    org.apache.pdfbox.pdfparser.PDFParser.parseObject(PDFParser.java:519)
    org.apache.pdfbox.pdfparser.PDFParser.parse(PDFParser.java:179)
    org.apache.pdfbox.pdmodel.PDDocument.load(PDDocument.java:841)
    org.apache.pdfbox.pdmodel.PDDocument.load(PDDocument.java:808)
    org.alfresco.repo.content.transform.PdfBoxContentTransformer.transformInternal(PdfBoxContentTransformer.java:74)
    org.alfresco.repo.content.transform.AbstractContentTransformer2.transform(AbstractContentTransformer2.java:167)
    org.alfresco.repo.content.transform.AbstractContentTransformer2.transform(AbstractContentTransformer2.java:143)
    org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerImpl.indexProperty(ADMLuceneIndexerImpl.java:948)
    org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerImpl.createDocumentsImpl(ADMLuceneIndexerImpl.java:625)
    org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerImpl.createDocuments(ADMLuceneIndexerImpl.java:590)
    org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerImpl.updateFullTextSearch(ADMLuceneIndexerImpl.java:1569)
    org.alfresco.repo.search.impl.lucene.fts.FullTextSearchIndexerImpl.index(FullTextSearchIndexerImpl.java:190)
    sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    java.lang.reflect.Method.invoke(Method.java:597)
    org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:304)
    org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
    org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
    org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
    org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
    $Proxy70.index(Unknown Source)
    org.alfresco.repo.search.impl.lucene.fts.FTSIndexerJob.execute(FTSIndexerJob.java:52)
    org.quartz.core.JobRunShell.run(JobRunShell.java:202)
    org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)

19.0% CPU Usage by Thread 'RMI TCP Connection(4285)-127.0.0.1'
  6/10 snapshots sharing following 33 elements
    sun.management.ThreadImpl.getThreadInfo0(Native Method)
    sun.management.ThreadImpl.getThreadInfo(ThreadImpl.java:145)
    sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    java.lang.reflect.Method.invoke(Method.java:597)
    com.sun.jmx.mbeanserver.ConvertingMethod.invokeWithOpenReturn(ConvertingMethod.java:167)
    com.sun.jmx.mbeanserver.MXBeanIntrospector.invokeM2(MXBeanIntrospector.java:96)
    com.sun.jmx.mbeanserver.MXBeanIntrospector.invokeM2(MXBeanIntrospector.java:33)
    com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(MBeanIntrospector.java:208)
    com.sun.jmx.mbeanserver.PerInterface.invoke(PerInterface.java:120)
    com.sun.jmx.mbeanserver.MBeanSupport.invoke(MBeanSupport.java:262)
    javax.management.StandardMBean.invoke(StandardMBean.java:391)
    com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
    com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
    javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1426)
    javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72)
    javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1264)
    javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1359)
    javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:788)
    sun.reflect.GeneratedMethodAccessor1513.invoke(Unknown Source)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    java.lang.reflect.Method.invoke(Method.java:597)
    sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
    sun.rmi.transport.Transport$1.run(Transport.java:159)
    java.security.AccessController.doPrivileged(Native Method)
    sun.rmi.transport.Transport.serviceCall(Transport.java:155)
    sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
    sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
    sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
    java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
    java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
    java.lang.Thread.run(Thread.java:619)
  4/10 snapshots sharing following 32 elements
    sun.management.ThreadImpl.getThreadInfo0(Native Method)
    sun.management.ThreadImpl.getThreadInfo(ThreadImpl.java:145)
    sun.reflect.GeneratedMethodAccessor1539.invoke(Unknown Source)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    java.lang.reflect.Method.invoke(Method.java:597)
    com.sun.jmx.mbeanserver.ConvertingMethod.invokeWithOpenReturn(ConvertingMethod.java:167)
    com.sun.jmx.mbeanserver.MXBeanIntrospector.invokeM2(MXBeanIntrospector.java:96)
    com.sun.jmx.mbeanserver.MXBeanIntrospector.invokeM2(MXBeanIntrospector.java:33)
    com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(MBeanIntrospector.java:208)
    com.sun.jmx.mbeanserver.PerInterface.invoke(PerInterface.java:120)
    com.sun.jmx.mbeanserver.MBeanSupport.invoke(MBeanSupport.java:262)
    javax.management.StandardMBean.invoke(StandardMBean.java:391)
    com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
    com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
    javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1426)
    javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72)
    javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1264)
    javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1359)
    javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:788)
    sun.reflect.GeneratedMethodAccessor1513.invoke(Unknown Source)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    java.lang.reflect.Method.invoke(Method.java:597)
    sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
    sun.rmi.transport.Transport$1.run(Transport.java:159)
    java.security.AccessController.doPrivileged(Native Method)
    sun.rmi.transport.Transport.serviceCall(Transport.java:155)
    sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
    sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
    sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
    java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
    java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
    java.lang.Thread.run(Thread.java:619)

0.0% CPU Usage by Thread 'main'
  10/10 snapshots sharing following 13 elements
    java.net.PlainSocketImpl.socketAccept(Native Method)
    java.net.PlainSocketImpl.accept(PlainSocketImpl.java:390)
    java.net.ServerSocket.implAccept(ServerSocket.java:453)
    java.net.ServerSocket.accept(ServerSocket.java:421)
    org.apache.catalina.core.StandardServer.await(StandardServer.java:389)
    org.apache.catalina.startup.Catalina.await(Catalina.java:642)
    org.apache.catalina.startup.Catalina.start(Catalina.java:602)
    sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    java.lang.reflect.Method.invoke(Method.java:597)
    org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
    org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)

J'ai refait un test peu après :
76.0% CPU Usage by Thread 'DefaultScheduler_Worker-3'

J'ai remarqué que de temps en temps, il y avait ce message dans les logs : 10x en plus d'un mois
11:18:28,271  ERROR [pdfbox.filter.FlateFilter] Stop reading corrupt stream
J'avais indiqué ce problème à cet endroit : http://forums.alfresco.com/en/viewtopic.php?f=8&t=24033#p78501

J'ai aussi (tous les jours), ce message :

15:12:51,512 User:maria WARN  [repo.usage.ContentUsageImpl] User usage (maria) is negative (-131938) overriding to 0

Visiblement le problème est avec pdfbox. Mais j'ai aucune idée de comment le résoudre…
rguinot
Customer

Re: Alfresco utilise la CPU à 100% depuis plusieurs jours

il semble donc bien que pas mal de temps soit passé dans pdfbox ….utilisez vous des pdf très gros ? injectez vous beaucoup de pdf simultanément ?
quelle est la conf matérielle ?
dranakan
Active Member

Re: Alfresco utilise la CPU à 100% depuis plusieurs jours

Il y a environ 12 pdfs par jour (moyenne chacun pèse 2 megabytes, provenant d'un scanner Scan Station Kodak en 200 dpi noir/blanc OCR) répartit sur la journée contenant chacun une dizaine de pages. Ces PDFs sont ensuite découpés en 1-3 nouveaux PDF's. Le traitement pour les découpés en assez vite fait (max quelques minutes en fonction du nombre de pages).

Il y a donc en tout environ 40 pdf par jour du lundi au vendredi. Il n'y a pas d'envois simultanés (cependant, lors du découpage, plusieurs fichiers sont créés très rapidement).

CPU

cat /proc/cpuinfo
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 15
model name      : Intel(R) Xeon(R) CPU            5148  @ 2.33GHz
stepping        : 6
cpu MHz         : 2327.524
cache size      : 4096 KB
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 10
wp              : yes
flags           : fpu de tsc msr pae cx8 apic cmov pat clflush acpi mmx fxsr sse sse2 ss ht nx constant_tsc up pni ssse3
bogomips        : 5820.75

Mémoire
free -m
             total       used       free     shared    buffers     cached
Mem:          2048       2028         19          0         11       1543
-/+ buffers/cache:        473       1574
Swap:         1055        108        947

Disque
La base/mysql et le alf_data sont sur un serveur NAS via NFS.

Autres infos
Alfresco 32.r2 (2440) with Mysql (5.0.77 Source distribution)
start alfresco arguments : /usr/java/jdk1.6.0_17/bin/java -Xms512m -Xmx1024m -XX:MaxPermSize=256m -server
On CentOS release 5.4 (Final) sur Machine virtuelle Xen
rguinot
Customer

Re: Alfresco utilise la CPU à 100% depuis plusieurs jours

quand vous dites alf_data est sur le NAS, est ce que vous indexes Lucene sont stockés en local ou sur le NAS ?
dranakan
Active Member

Re: Alfresco utilise la CPU à 100% depuis plusieurs jours

Les indexes Lucene sont stockés sur le NAS.

L'attente d'accès disque ferait-il tourner en rond la création des indexes?
Me conseillez-vous de transférer le lucene index en local ?
rguinot
Customer

Re: Alfresco utilise la CPU à 100% depuis plusieurs jours

Oui je recommande très fortement de mettre les indexes en local, propriété dir.indexes. C'est probablement la cause de pas mal de problèmes.
Vous pouvez voir si vous brulez du CPU en attente d'io avec la colonne "wa" de vmstat (kernel 2.6 minimum)

verifiez également la config de la base de données , voir notamment http://www.mysqlperformanceblog.com/2007/11/01/innodb-performance-optimization-basics/

et la config de la JVM, voir notamment : http://java.sun.com/javase/technologies/hotspot/gc/gc_tuning_6.html