AnsweredAssumed Answered

Adding new document to the repository takes too long.

Question asked by projetnumero9 on Oct 24, 2012
Hello everybody,

sorry for the lame title.
Here is my problem …

As others, I have a server (W2K8 64bits R2) with Alfresco 4.0.d installed (Community Edition, via the bundle) with a MySQL database.
As others, I had the SSL certificate problem between Alfresco and SOLR. I realised that checking the Tomcat logs : 1 Go of logs per week, that was kind of curious.

Unable to start anew as it is a "production" server, I chose to generate new certificates using :
http://wiki.alfresco.com/wiki/Alfresco_And_SOLR#Generating_new_SSL_certificates
Fairly simple, but…
The next day, the users came to me explaining that what took before my intervention 20 seconds now took 60 seconds !  :shock:
I checked the logs  and saw (in the stdout) :

2012-10-22 16:23:03,271  ERROR [quartz.core.ErrorLogger] [DefaultScheduler_Worker-6] Job (DEFAULT.org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean#21b38cdc threw an exception.
org.quartz.SchedulerException: Job threw an unhandled exception. [See nested exception: org.springframework.scheduling.quartz.JobMethodInvocationFailedException: Invocation of method 'run' on target class [class org.alfresco.module.org_alfresco_module_wcmquickstart.jobs.PublishQueueProcessor] failed; nested exception is org.alfresco.repo.search.impl.lucene.LuceneQueryParserException: 09220136 ]
   at org.quartz.core.JobRunShell.run(JobRunShell.java:227)
   at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:563)
Caused by: org.springframework.scheduling.quartz.JobMethodInvocationFailedException: Invocation of method 'run' on target class [class org.alfresco.module.org_alfresco_module_wcmquickstart.jobs.PublishQueueProcessor] failed; nested exception is org.alfresco.repo.search.impl.lucene.LuceneQueryParserException: 09220136
   at org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean$MethodInvokingJob.executeInternal(MethodInvokingJobDetailFactoryBean.java:273)
   at org.springframework.scheduling.quartz.QuartzJobBean.execute(QuartzJobBean.java:86)
   at org.quartz.core.JobRunShell.run(JobRunShell.java:216)
   … 1 more
Caused by: org.alfresco.repo.search.impl.lucene.LuceneQueryParserException: 09220136
   at org.alfresco.repo.search.impl.solr.SolrQueryHTTPClient.executeQuery(SolrQueryHTTPClient.java:364)
   at org.alfresco.repo.search.impl.solr.SolrQueryLanguage.executeQuery(SolrQueryLanguage.java:49)
   at org.alfresco.repo.search.impl.solr.SolrSearchService.query(SolrSearchService.java:348)
   at org.alfresco.repo.search.impl.solr.SolrSearchService.query(SolrSearchService.java:152)
   at org.alfresco.repo.search.SearcherComponent.query(SearcherComponent.java:67)
   at org.alfresco.repo.search.AbstractSearcherComponent.query(AbstractSearcherComponent.java:53)
   at sun.reflect.GeneratedMethodAccessor663.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:597)
   at org.alfresco.repo.management.subsystems.SubsystemProxyFactory$1.invoke(SubsystemProxyFactory.java:65)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
   at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
   at $Proxy13.query(Unknown Source)
   at org.alfresco.module.org_alfresco_module_wcmquickstart.jobs.PublishQueueProcessor$1$1.execute(PublishQueueProcessor.java:62)
   at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:388)
   at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:259)
   at org.alfresco.module.org_alfresco_module_wcmquickstart.jobs.PublishQueueProcessor$1.doWork(PublishQueueProcessor.java:55)
   at org.alfresco.repo.security.authentication.AuthenticationUtil.runAs(AuthenticationUtil.java:519)
   at org.alfresco.module.org_alfresco_module_wcmquickstart.jobs.PublishQueueProcessor.run(PublishQueueProcessor.java:50)
   at sun.reflect.GeneratedMethodAccessor752.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:597)
   at org.springframework.util.MethodInvoker.invoke(MethodInvoker.java:273)
   at org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean$MethodInvokingJob.executeInternal(MethodInvokingJobDetailFactoryBean.java:264)
   … 3 more
Caused by: java.net.SocketException: Software caused connection abort: recv failed
   at java.net.SocketInputStream.socketRead0(Native Method)
   at java.net.SocketInputStream.read(SocketInputStream.java:129)
   at com.sun.net.ssl.internal.ssl.InputRecord.readFully(InputRecord.java:293)
   at com.sun.net.ssl.internal.ssl.InputRecord.read(InputRecord.java:331)
   at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:798)
   at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:755)
   at com.sun.net.ssl.internal.ssl.AppInputStream.read(AppInputStream.java:75)
   at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
   at java.io.BufferedInputStream.read(BufferedInputStream.java:237)
   at org.apache.commons.httpclient.HttpParser.readRawLine(HttpParser.java:78)
   at org.apache.commons.httpclient.HttpParser.readLine(HttpParser.java:106)
   at org.apache.commons.httpclient.HttpConnection.readLine(HttpConnection.java:1116)
   at org.apache.commons.httpclient.MultiThreadedHttpConnectionManager$HttpConnectionAdapter.readLine(MultiThreadedHttpConnectionManager.java:1413)
   at org.apache.commons.httpclient.HttpMethodBase.readStatusLine(HttpMethodBase.java:1973)
   at org.apache.commons.httpclient.HttpMethodBase.readResponse(HttpMethodBase.java:1735)
   at org.apache.commons.httpclient.HttpMethodBase.execute(HttpMethodBase.java:1098)
   at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:398)
   at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171)
   at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397)
   at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:323)
   at org.alfresco.repo.search.impl.solr.SolrQueryHTTPClient.executeQuery(SolrQueryHTTPClient.java:318)
   … 26 more

Not fluent in JAVA stack trace, I checked and rechecked the configuration files of Alfresco and SOLR, only to find everything in order : certificate passwords, subtrees, homedirs…
When I had the SSL certificate problem, I had the same stack every 15 seconds.
The stack I have now (hereinbefore) is not appearing with such a rate.

One of the thing I tested was : http://localhost:8080/solr
It does not work, as if the certificate was not OK.
But once again, I rechecked : what was created when I launched generate_keystores.bat (after modifying %ALFRESCO_HOME%) was in place.

Any leads ?
Thanks in advance,
D.

Outcomes