cancel
Showing results for 
Search instead for 
Did you mean: 

3.2 New Install and GC overhead limit exceeded

sergisat
Champ in-the-making
Champ in-the-making
Hello, my new dev server is Ubuntu Server 9.04 64 bits in a virtual machine:

4vcpus
16GB RAM
java version "1.6.0_13"
Java(TM) SE Runtime Environment (build 1.6.0_13-b03)
Java HotSpot(TM) 64-Bit Server VM (build 11.3-b02, mixed mode)
Mysql in another server

New installation of Alfresco-Community-3.2-Linux-x86-Install, I try to copy files from 5 pc's over CIFS and after 15 minutes I get this errors:


INFO: Server startup in 268752 ms
09:04:35,454  ERROR [hibernate.transaction.JDBCTransaction] JDBC rollback failed
com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Connection.close() has already been called. Invalid operation in this state.
        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.getMutex(ConnectionImpl.java:3032)
        at com.mysql.jdbc.ConnectionImpl.rollback(ConnectionImpl.java:4606)
        at org.apache.commons.dbcp.DelegatingConnection.rollback(DelegatingConnection.java:328)
        at org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.rollback(PoolingDataSource.java:312)
        at org.hibernate.transaction.JDBCTransaction.rollbackAndResetAutoCommit(JDBCTransaction.java:183)
        at org.hibernate.transaction.JDBCTransaction.rollback(JDBCTransaction.java:162)
        at org.springframework.orm.hibernate3.HibernateTransactionManager.doRollback(HibernateTransactionManager.java:597)
        at org.springframework.transaction.support.AbstractPlatformTransactionManager.doRollbackOnCommitException(AbstractPlatformTransactionManager.java:803)
        at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:697)
        at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:632)
        at org.springframework.transaction.interceptor.TransactionAspectSupport.commitTransactionAfterReturning(TransactionAspectSupport.java:314)
        at org.alfresco.util.transaction.SpringAwareUserTransaction.commit(SpringAwareUserTransaction.java:467)
        at org.alfresco.filesys.alfresco.AlfrescoDiskDriver.endTransaction(AlfrescoDiskDriver.java:227)
        at org.alfresco.jlan.server.SrvSession.endTransaction(SrvSession.java:523)
        at org.alfresco.jlan.smb.server.SMBSrvSession.sendResponseSMB(SMBSrvSession.java:1574)
        at org.alfresco.jlan.smb.server.NTProtocolHandler.procNTCreateAndX(NTProtocolHandler.java:5820)
        at org.alfresco.jlan.smb.server.NTProtocolHandler.runProtocol(NTProtocolHandler.java:306)
        at org.alfresco.jlan.smb.server.SMBSrvSession.runHandler(SMBSrvSession.java:1354)
        at org.alfresco.jlan.smb.server.SMBSrvSession.processPacket(SMBSrvSession.java:1446)
        at org.alfresco.jlan.smb.server.nio.NIOCIFSThreadRequest.runRequest(NIOCIFSThreadRequest.java:106)
        at org.alfresco.jlan.server.thread.ThreadRequestPool$ThreadWorker.run(ThreadRequestPool.java:141)
        at java.lang.Thread.run(Thread.java:619)
09:04:42,710  WARN  [jdbc.support.SQLErrorCodesFactory] Error while extracting database product name - falling back to empty error codes
org.springframework.jdbc.support.MetaDataAccessException: Error while extracting DatabaseMetaData; nested exception is java.sql.SQLException: Connection com.mysql.jdbc.JDBC4Connection@44f7bb41 is closed.
Caused by: java.sql.SQLException: Connection com.mysql.jdbc.JDBC4Connection@44f7bb41 is closed.
        at org.apache.commons.dbcp.DelegatingConnection.checkOpen(DelegatingConnection.java:354)
        at org.apache.commons.dbcp.DelegatingConnection.getMetaData(DelegatingConnection.java:310)
        at org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.getMetaData(PoolingDataSource.java:234)
        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.hibernate.jdbc.BorrowedConnectionProxy.invoke(BorrowedConnectionProxy.java:50)
        at $Proxy5.getMetaData(Unknown Source)
        at org.springframework.jdbc.support.JdbcUtils.extractDatabaseMetaData(JdbcUtils.java:189)
        at org.springframework.jdbc.support.JdbcUtils.extractDatabaseMetaData(JdbcUtils.java:224)
        at org.springframework.jdbc.support.SQLErrorCodesFactory.getErrorCodes(SQLErrorCodesFactory.java:215)
        at org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.setDataSource(SQLErrorCodeSQLExceptionTranslator.java:133)
        at org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.<init>(SQLErrorCodeSQLExceptionTranslator.java:98)
        at org.springframework.orm.hibernate3.HibernateTransactionManager.getDefaultJdbcExceptionTranslator(HibernateTransactionManager.java:741)
        at org.springframework.orm.hibernate3.HibernateTransactionManager.convertHibernateAccessException(HibernateTransactionManager.java:715)
        at org.springframework.orm.hibernate3.HibernateTransactionManager.doRollback(HibernateTransactionManager.java:604)
        at org.springframework.transaction.support.AbstractPlatformTransactionManager.doRollbackOnCommitException(AbstractPlatformTransactionManager.java:803)
        at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:697)
        at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:632)
        at org.springframework.transaction.interceptor.TransactionAspectSupport.commitTransactionAfterReturning(TransactionAspectSupport.java:314)
        at org.alfresco.util.transaction.SpringAwareUserTransaction.commit(SpringAwareUserTransaction.java:467)
        at org.alfresco.filesys.alfresco.AlfrescoDiskDriver.endTransaction(AlfrescoDiskDriver.java:227)
        at org.alfresco.jlan.server.SrvSession.endTransaction(SrvSession.java:523)
        at org.alfresco.jlan.smb.server.SMBSrvSession.sendResponseSMB(SMBSrvSession.java:1574)
        at org.alfresco.jlan.smb.server.NTProtocolHandler.procNTCreateAndX(NTProtocolHandler.java:5820)
        at org.alfresco.jlan.smb.server.NTProtocolHandler.runProtocol(NTProtocolHandler.java:306)
        at org.alfresco.jlan.smb.server.SMBSrvSession.runHandler(SMBSrvSession.java:1354)
        at org.alfresco.jlan.smb.server.SMBSrvSession.processPacket(SMBSrvSession.java:1446)
        at org.alfresco.jlan.smb.server.nio.NIOCIFSThreadRequest.runRequest(NIOCIFSThreadRequest.java:106)
        at org.alfresco.jlan.server.thread.ThreadRequestPool$ThreadWorker.run(ThreadRequestPool.java:141)
        at java.lang.Thread.run(Thread.java:619)
09:04:42,711  ERROR [orm.hibernate3.HibernateTransactionManager] Commit exception overridden by rollback exception
java.lang.OutOfMemoryError: GC overhead limit exceeded
09:04:56,753  ERROR [repo.transaction.AlfrescoTransactionSupport] After completion (rolled-back) TransactionalCache exception
org.alfresco.error.AlfrescoRuntimeException: 06080174 Failed to add txn caches to manager
        at org.alfresco.repo.cache.TransactionalCache.getTransactionData(TransactionalCache.java:221)
        at org.alfresco.repo.cache.TransactionalCache.afterRollback(TransactionalCache.java:643)
        at org.alfresco.repo.transaction.AlfrescoTransactionSupport$TransactionSynchronizationImpl.afterCompletion(AlfrescoTransactionSupport.java:824)
        at org.springframework.transaction.support.TransactionSynchronizationUtils.invokeAfterCompletion(TransactionSynchronizationUtils.java:133)
        at org.springframework.transaction.support.AbstractPlatformTransactionManager.invokeAfterCompletion(AbstractPlatformTransactionManager.java:904)
        at org.springframework.transaction.support.AbstractPlatformTransactionManager.triggerAfterCompletion(AbstractPlatformTransactionManager.java:879)
        at org.springframework.transaction.support.AbstractPlatformTransactionManager.processRollback(AbstractPlatformTransactionManager.java:782)
        at org.springframework.transaction.support.AbstractPlatformTransactionManager.rollback(AbstractPlatformTransactionManager.java:730)
        at org.springframework.transaction.interceptor.TransactionAspectSupport.completeTransactionAfterThrowing(TransactionAspectSupport.java:332)
        at org.alfresco.util.transaction.SpringAwareUserTransaction.completeTransactionAfterThrowing(SpringAwareUserTransaction.java:562)
        at org.alfresco.util.transaction.SpringAwareUserTransaction.rollback(SpringAwareUserTransaction.java:532)
        at org.alfresco.filesys.alfresco.AlfrescoDiskDriver.endTransaction(AlfrescoDiskDriver.java:216)
        at org.alfresco.jlan.server.SrvSession.endTransaction(SrvSession.java:523)
        at org.alfresco.jlan.smb.server.SMBSrvSession.processPacket(SMBSrvSession.java:1514)
        at org.alfresco.jlan.smb.server.nio.NIOCIFSThreadRequest.runRequest(NIOCIFSThreadRequest.java:106)
        at org.alfresco.jlan.server.thread.ThreadRequestPool$ThreadWorker.run(ThreadRequestPool.java:141)
        at java.lang.Thread.run(Thread.java:619)
Caused by: net.sf.ehcache.ObjectExistsException: Cache org.alfresco.storeAndNodeIdTransactionalCache_bd188298-f852-4ed9-973e-f19254ae888e_updates already exists
        at net.sf.ehcache.CacheManager.addCacheNoCheck(CacheManager.java:689)
        at net.sf.ehcache.CacheManager.addCache(CacheManager.java:683)
        at net.sf.ehcache.CacheManager.addCache(CacheManager.java:640)
        at org.alfresco.repo.cache.TransactionalCache.getTransactionData(TransactionalCache.java:216)
        … 16 more
Exception in thread "DefaultScheduler_QuartzSchedulerThread" java.lang.OutOfMemoryError: GC overhead limit exceeded
Exception in thread "NetBIOS Name Server" java.lang.OutOfMemoryError: GC overhead limit exceeded
Exception in thread "RMI TCP Connection(idle)" java.lang.OutOfMemoryError: GC overhead limit exceeded
Exception in thread "FileStateReaper" java.lang.OutOfMemoryError: GC overhead limit exceeded
09:21:14,767  ERROR [transaction.SpringAwareUserTransaction.trace] Detected first UserTransaction which is being garbage collected without a commit() or rollback()
09:21:14,767  ERROR [transaction.SpringAwareUserTransaction.trace] Logging of transaction call stack is now enabled and will affect performance

My alfresco.sh is:

#!/bin/sh
# Start or stop Alfresco server
# Set the following to where Tomcat is installed
ALF_HOME=/opt/Alfresco
cd "$ALF_HOME"
APPSERVER="${ALF_HOME}/tomcat"
export JAVA_HOME="/usr"
# Set any default JVM values
#export JAVA_OPTS='-Xms128m -Xmx512m -XX:MaxPermSize=128m -server'
export JAVA_OPTS='-Xms512m -Xmx1024m -XX:MaxPermSize=1024m -server'
export JAVA_OPTS="${JAVA_OPTS} -Dalfresco.home=${ALF_HOME} -Dcom.sun.management.jmxremote"
# Following only needed for Sun JVMs before to 1.5 update 8
#export JAVA_OPTS="${JAVA_OPTS} -XX:CompileCommand=exclude,org/apache/lucene/index/IndexReader\$1,doBody -XX:CompileCommand=exclude,org/
alfresco/repo/search/impl/lucene/index/IndexInfo\$Merger,mergeIndexes -XX:CompileCommand=exclude,org/alfresco/repo/search/impl/lucene/in
dex/IndexInfo\$Merger,mergeDeletions"
#
if [ "$1" = "start" ]; then
  "${APPSERVER}/bin/startup.sh"
#  if [ -r ./virtual_start.sh ]; then
#    sh ./virtual_start.sh
#  fi
#  if [ -r "$ALF_HOME"/start_oo.sh ]; then
#    sh "$ALF_HOME"/start_oo.sh
#  fi
elif [ "$1" = "stop" ]; then
  "${APPSERVER}/bin/shutdown.sh"
#  if [ -r ./virtual_start.sh ]; then
#    sh ./virtual_stop.sh
#  fi
#  if [ -r "$ALF_HOME"/start_oo.sh ]; then
#    killall soffice.bin
#  fi
fi

My /opt/Alfresco/tomcat/shared/classes/alfresco-global.properties

###############################
## Common Alfresco Properties #
###############################

#
# Sample custom content and index data location
#————-
#dir.root=/opt/Alfresco/alf_data
dir.root=/mnt/alfresco

#
# Sample database connection properties
#————-
db.name=alfrescopru32
db.username=alfrescopru32
db.password=password
db.host=server_name_mysql
db.port=3306

#
# External locations
#————-
#ooo.exe=/opt/Alfresco/program/soffice
#img.root=/usr/local
#swf.exe=/opt/Alfresco/bin/pdf2swf

#Modificaciones para ImageMagick
img.root=/usr

#Modificacion para pdf2swf (swftools)
swf.exe=/usr/bin/pdf2swf

#
# MySQL connection
#————-
db.driver=org.gjt.mm.mysql.Driver
#db.url=jdbc:mysql://${db.host}:${db.port}/${db.name}
db.url=jdbc:mysql://server_name_mysql:3306/alfrescopru32
hibernate.dialect=org.hibernate.dialect.MySQLInnoDBDialect
32 REPLIES 32

muralie39
Champ on-the-rise
Champ on-the-rise
Finally,

  I resolved this issue.. & i upgraded the version also….

ziad00
Champ in-the-making
Champ in-the-making
How did you guys solve this? I upgraded to the latest version and still garbage collector is eating up all the ram.

on a 4GB RAM VM, i'm using this JAVA_OPTS

JAVA_OPTS='-Xms1g -Xmx2g -Xss1m -XX:-UseGCOverheadLimit -XX:MaxPermSize=128m -XX:NewSize=512m -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode -XX:CMSInitiatingOccupancyFraction=80 -server -Dalfresco.home=%ALF_HOME% -Dcom.sun.management.jmxremote -Xcomp -Xbatch -Xloggc:gc.log GarbageCollector'

besides this and when it doesn't crash (rare), CIFS transfer is very slow at the beginning of the transfer.

Thanks everyone!

muralie39
Champ on-the-rise
Champ on-the-rise
Can you please provide the following details:


1. which version of alfresco you are using?
2. where you deployed the alfresco?
3. please provide the alfresco-global properties
4. Open jconsole & connect to alfresco by using following url :

      a) service:jmx:rmi:///jndi/rmi://servername:50500/alfresco/jmxrmi
username: controlRole
password: change_asap

    provide the screen shot of vm summary..

why you are providing these parameters to jvm.. -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode -XX:CMSInitiatingOccupancyFraction=80