cancel
Showing results for 
Search instead for 
Did you mean: 

GC overhead limit exceeded

hedi_ad
Champ on-the-rise
Champ on-the-rise
Hello,

Every midnight, I have the error below and after that the server is out of service. I am obliged each time to restart the service and sometimes the whole server.
this is my configuration:
Alfresco version : 4.2.f
Environnement: Windows server 2008 R2
JVM settings in : HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Apache Software Foundation\Procrun 2.0\alfrescoTomcat\Parameters\Java\Options: (I run Alfresco as a service)
-Xms2048M
-Xmx10240M
-Dalfresco.home=C:\Alfresco
-Dcom.sun.management.jmxremote
-Dcatalina.base=C:\Alfresco\tomcat
-Dcatalina.home=C:\Alfresco\tomcat
-Djava.endorsed.dirs=C:\Alfresco\tomcat\endorsed
-Djava.io.tmpdir=C:\Alfresco\tomcat\temp
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
-Djava.util.logging.config.file=C:\Alfresco\tomcat\conf\logging.properties
-XX:+DisableExplicitGC
-XX:ReservedCodeCacheSize=512m
-XX:MaxPermSize=512M
JVM settings in C:\Alfresco\tomcat\bin\setenv.bat
set JAVA_HOME=C:\Program Files\Java\jdk1.8.0_65
set JRE_HOME=%JAVA_HOME%
set JAVA_OPTS=++JvmOptions="-XX:+DisableExplicitGC" ++JvmOptions="-XX:ReservedCodeCacheSize=128m" –JvmMs 128 –JvmMx 768 ++JvmOptions=" -Xms2048m -Xmx10240m -server -XX:MaxPermSize=512m" %JAVA_OPTS%

log file:
00:39:36,523 ERROR [org.springframework.extensions.webscripts.AbstractRuntime] Exception from executeScript - redirecting to status template error: Error encountered while performing TenantUtil.runAsWork: GC overhead limit exceeded
java.lang.RuntimeException: Error encountered while performing TenantUtil.runAsWork: GC overhead limit exceeded
   at org.alfresco.repo.tenant.TenantUtil.runAsWork(TenantUtil.java:128)
   at org.alfresco.repo.tenant.TenantUtil.runAsTenant(TenantUtil.java:88)
   at org.alfresco.rest.api.PublicApiRepositoryContainer.executeScript(PublicApiRepositoryContainer.java:77)
   at org.springframework.extensions.webscripts.AbstractRuntime.executeScript(AbstractRuntime.java:378)
   at org.springframework.extensions.webscripts.AbstractRuntime.executeScript(AbstractRuntime.java:209)
   at org.alfresco.repo.web.scripts.TenantWebScriptServlet.service(TenantWebScriptServlet.java:74)
   at org.alfresco.rest.api.PublicApiWebScriptServlet.service(PublicApiWebScriptServlet.java:53)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
   at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
   at org.alfresco.web.app.servlet.GlobalLocalizationFilter.doFilter(GlobalLocalizationFilter.java:61)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
   at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
   at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
   at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501)
   at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
   at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
   at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
   at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
   at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
   at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1040)
   at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
   at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2441)
   at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:2430)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.OutOfMemoryError: GC overhead limit exceeded
   at java.util.HashMap.inflateTable(Unknown Source)
   at java.util.HashMap.put(Unknown Source)
   at java.util.HashSet.add(Unknown Source)
   at java.util.AbstractCollection.addAll(Unknown Source)
   at org.alfresco.repo.security.permissions.impl.PermissionServiceImpl$AclTest.<init>(PermissionServiceImpl.java:1857)
   at org.alfresco.repo.security.permissions.impl.PermissionServiceImpl.hasPermission(PermissionServiceImpl.java:727)
   at org.alfresco.repo.security.permissions.impl.PermissionServiceImpl.hasPermission(PermissionServiceImpl.java:540)
   at org.alfresco.repo.security.permissions.impl.PermissionServiceImpl.hasPermission(PermissionServiceImpl.java:1042)
   at sun.reflect.GeneratedMethodAccessor352.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
   at java.lang.reflect.Method.invoke(Unknown Source)
   at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
   at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
   at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
   at com.sun.proxy.$Proxy40.hasPermission(Unknown Source)
   at org.alfresco.repo.security.permissions.impl.acegi.ACLEntryVoter.vote(ACLEntryVoter.java:606)
   at net.sf.acegisecurity.vote.AffirmativeBased.decide(AffirmativeBased.java:69)
   at net.sf.acegisecurity.intercept.AbstractSecurityInterceptor.beforeInvocation(AbstractSecurityInterceptor.java:398)
   at net.sf.acegisecurity.intercept.method.aopalliance.MethodSecurityInterceptor.invoke(MethodSecurityInterceptor.java:77)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
   at org.alfresco.repo.security.permissions.impl.ExceptionTranslatorMethodInterceptor.invoke(ExceptionTranslatorMethodInterceptor.java:46)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
   at org.alfresco.repo.audit.AuditMethodInterceptor.invoke(AuditMethodInterceptor.java:161)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
   at org.alfresco.repo.transaction.RetryingTransactionInterceptor$1.execute(RetryingTransactionInterceptor.java:79)
   at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:452)
   at org.alfresco.repo.transaction.RetryingTransactionInterceptor.invoke(RetryingTransactionInterceptor.java:69)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
   at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)

any help will be appreciated
3 REPLIES 3

angelborroy
Community Manager Community Manager
Community Manager
Sorry to see that my information was not useful for you on the other thread.

Let's see what else can be checked.

There is a number of background processes with the following default configuration:

activities.feed.notifier.cronExpression=0 0 0 * * ?
system.content.orphanCleanup.cronExpression=0 0 4 * * ?
system.content.caching.contentCleanup.cronExpression=0 0 3 * * ?
solr.backup.alfresco.cronExpression=0 0 2 * * ?
solr.backup.archive.cronExpression=0 0 4 * * ?


If your "midnight" is midnight, the one and only is
activities.feed.notifier.cronExpression
. This process gathers all activity information for every user in the system and sends an email with it. In order to determine if this is the cause, you can include a line like this one in your
alfresco-global.properties
to disable feed process.


activities.feed.notifier.enabled=false
Hyland Developer Evangelist

Hello,
The error is happened exactly in 00: 39, I disabled the feed notifier and we will see what will happened

hedi_ad
Champ on-the-rise
Champ on-the-rise
Hello,

the error is the use of a scheduled task (I created at the windows utility "scheduled tasks") that triggers CMISSYNC order to synchronize documents with a sub windows directory.

When I desactivited the rule, all the log error gone away.

I will see the cause of problem with CmisSync.

thanks,

Hedi Adouni
OKTOBOOT