Hello!
This morning i got an error with my open-xchange. In the open-xchange.log was this error:
Code:
Jun 11, 2010 7:29:56 AM com.openexchange.ajp13.najp.AJPv13TaskWatcher$TaskRunCallable handleExceededTask
INFO: AJP Listener "AJPListener-0000952" exceeds max. running time of 60000msec -> Processing time: 202149msec
java.lang.Throwable
at sun.misc.Unsafe.park(Native Method)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:118)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:716)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:746)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1076)
at java.util.concurrent.locks.ReentrantLock$FairSync.lock(ReentrantLock.java:197)
at java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:256)
at com.openexchange.database.internal.Pools.getPool(Pools.java:103)
at com.openexchange.database.internal.ReplicationMonitor.backAndIncrementTransaction(ReplicationMonitor.java:207)
at com.openexchange.database.internal.wrapping.JDBC3ConnectionReturner.close(JDBC3ConnectionReturner.java:99)
at com.openexchange.database.internal.DatabaseServiceImpl.back(DatabaseServiceImpl.java:99)
at com.openexchange.database.internal.DatabaseServiceImpl.backReadOnly(DatabaseServiceImpl.java:178)
at com.openexchange.databaseold.Database.back(Database.java:178)
at com.openexchange.server.impl.DBPool.closeReaderSilent(DBPool.java:104)
at com.openexchange.groupware.contexts.impl.RdbContextStorage.getAdmin(RdbContextStorage.java:155)
at com.openexchange.groupware.contexts.impl.RdbContextStorage.loadContext(RdbContextStorage.java:189)
at com.openexchange.groupware.contexts.impl.CachingContextStorage$1.load(CachingContextStorage.java:141)
at com.openexchange.groupware.contexts.impl.CachingContextStorage$1.load(CachingContextStorage.java:150)
at com.openexchange.cache.dynamic.impl.Refresher.refresh(Refresher.java:172)
at com.openexchange.groupware.contexts.impl.ContextReloader.<init>(ContextReloader.java:78)
at com.openexchange.groupware.contexts.impl.CachingContextStorage.loadContext(CachingContextStorage.java:158)
at com.openexchange.groupware.contexts.impl.ContextStorage.getContext(ContextStorage.java:112)
at com.openexchange.groupware.contexts.impl.ContextStorage.getStorageContext(ContextStorage.java:219)
at com.openexchange.ajax.SessionServlet.getLocalSession(SessionServlet.java:401)
at com.openexchange.ajax.SessionServlet.getSession(SessionServlet.java:331)
at com.openexchange.ajax.SessionServlet.service(SessionServlet.java:155)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
at com.openexchange.ajp13.najp.AJPv13RequestHandlerImpl.doServletService(AJPv13RequestHandlerImpl.java:504)
at com.openexchange.ajp13.AJPv13Request.response(AJPv13Request.java:129)
at com.openexchange.ajp13.najp.AJPv13RequestHandlerImpl.createResponse(AJPv13RequestHandlerImpl.java:316)
at com.openexchange.ajp13.najp.AJPv13ConnectionImpl.createResponse(AJPv13ConnectionImpl.java:207)
at com.openexchange.ajp13.najp.AJPv13Task.call(AJPv13Task.java:346)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
at java.util.concurrent.FutureTask.run(FutureTask.java:123)
at com.openexchange.threadpool.internal.CustomThreadPoolExecutor$Worker.runTask(CustomThreadPoolExecutor.java:737)
at com.openexchange.threadpool.internal.CustomThreadPoolExecutor$Worker.run(CustomThreadPoolExecutor.java:763)
at java.lang.Thread.run(Thread.java:595)
Jun 11, 2010 7:29:56 AM com.openexchange.ajp13.najp.AJPv13TaskWatcher$TaskRunCallable keepAliveGetEmptyBody
INFO: AJP KEEP-ALIVE: Flushed empty GET-BODY request to socket "/127.0.0.1:47165" to initiate a KEEP-ALIVE poll.
Jun 11, 2010 7:29:56 AM com.openexchange.ajp13.najp.AJPv13TaskWatcher$TaskRunCallable handleExceededTask
INFO: AJP Listener "AJPListener-0000943" exceeds max. running time of 60000msec -> Processing time: 894642msec
I don't know the problem, but after a restart the system is working.
I also found a second problem.
Code:
Jun 8, 2010 10:15:30 AM com.openexchange.database.internal.ConnectionPool$ConnectionLifecycle validate
WARNING: DBP-0012 Category=5 Message=Connection used for 3215 milliseconds. exceptionID=1801575603-43
DBP-0012 Category=5 Message=Connection used for 3215 milliseconds. exceptionID=1801575603-43
at com.openexchange.database.internal.DBPoolingExceptionFactory.createException(DBPoolingExceptionFactory.java:76)
at com.openexchange.database.internal.DBPoolingExceptionFactory.createException(DBPoolingExceptionFactory.java:62)
at com.openexchange.exceptions.Exceptions.create(Exceptions.java:139)
at com.openexchange.exceptions.Exceptions.create(Exceptions.java:143)
at com.openexchange.exceptions.Exceptions.create(Exceptions.java:155)
at com.openexchange.database.DBPoolingExceptionCodes.create(DBPoolingExceptionCodes.java:211)
at com.openexchange.database.internal.ConnectionPool$ConnectionLifecycle.validate(ConnectionPool.java:273)
at com.openexchange.pooling.ReentrantLockPool.back(ReentrantLockPool.java:250)
at com.openexchange.pooling.ReentrantLockPool.back(ReentrantLockPool.java:216)
at com.openexchange.database.internal.ReplicationMonitor.backAndIncrementTransaction(ReplicationMonitor.java:216)
at com.openexchange.database.internal.wrapping.JDBC3ConnectionReturner.close(JDBC3ConnectionReturner.java:99)
at com.openexchange.database.internal.DatabaseServiceImpl.back(DatabaseServiceImpl.java:99)
at com.openexchange.database.internal.DatabaseServiceImpl.backWritable(DatabaseServiceImpl.java:190)
at com.openexchange.databaseold.Database.back(Database.java:194)
at com.openexchange.admin.storage.sqlStorage.OXAdminPoolDBPool.pushConnectionForContext(OXAdminPoolDBPool.java:125)
at com.openexchange.admin.tools.AdminCache.pushConnectionForContext(AdminCache.java:352)
at com.openexchange.admin.storage.mysqlStorage.OXUserMySQLStorage.getData(OXUserMySQLStorage.java:1780)
at com.openexchange.admin.rmi.impl.OXUser.getData(OXUser.java:839)
at sun.reflect.GeneratedMethodAccessor1241.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:592)
at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:294)
at sun.rmi.transport.Transport$1.run(Transport.java:153)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.Transport.serviceCall(Transport.java:149)
at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:466)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:707)
at java.lang.Thread.run(Thread.java:595)
What is the problem? Is there something wrong with my database-connection? Here my configdb.properties:
Code:
# ConfigDB Properties
# This file configures JDBC connections to the configdb. The configdb holds data
# about where to find context specific data.
# The driver properties should be kept at their defaults.
# useSeperateWrite must be true for mysql master slave replication setups
# and false if not.
useSeparateWrite=false
# the read connection must point to the database slave
readDriverClass=com.mysql.jdbc.Driver
# readURL holds the database host and the used schema name
readUrl=jdbc:mysql://192.168.17.244:3306/configdb
# username for the database user
readProperty.1=user=openxchange
# password for the database user
readProperty.2=password=xxxxx
# The driver properties should be kept at their defaults.
readProperty.3=useUnicode=true
readProperty.4=characterEncoding=UTF-8
readProperty.5=autoReconnect=true
readProperty.6=useServerPrepStmts=false
readProperty.7=useTimezone=true
readProperty.8=serverTimezone=UTC
readProperty.9=connectTimeout=15000
readProperty.10=socketTimeout=15000
# the read connection must point to the database master
writeDriverClass=com.mysql.jdbc.Driver
# readURL holds the database host and the used schema name
writeUrl=jdbc:mysql://192.168.17.244:3306/configdb
# username for the database user
writeProperty.1=user=openxchange
# password for the database user
writeProperty.2=password=xxxxx
# The driver properties should be kept at their defaults
writeProperty.3=useUnicode=true
writeProperty.4=characterEncoding=UTF-8
writeProperty.5=autoReconnect=true
writeProperty.6=useServerPrepStmts=false
writeProperty.7=useTimezone=true
writeProperty.8=serverTimezone=UTC
writeProperty.9=connectTimeout=15000
writeProperty.10=socketTimeout=15000
# Timeinterval of cleaner thread in milliseconds. This thread removes idle timed
# out database connections and removes not used database connection pools.
# after each cleanerInterval.
cleanerInterval=10000
# Number of connections to keep open although they aren't used.
# This value is overwritten for OX databases from configdb. Sould be 0 so that
# no unnecessary connection are kept in the memory.
minIdle=0
# Number of maximum idle connections. More connections aren't pooled and closed.
# -1 stands for unlimited.
maxIdle=-1
# Maximum time in milliseconds a connection can be idle. If this time is
# exceeded, the connection gets closed.
maxIdleTime=60000
# If exhaustedAction is set to BLOCK, not more than maxActive connections
# will be opened to the mysql database.
# This value is overwritten for OX databases from configdb.
maxActive=500
# If exhaustedAction is set to BLOCK, a thread will not wait for more than
# maxWait milliseconds.
maxWait=10000
# Maximum time in milliseconds a connection will be used. After this time
# the connection get closed.
maxLifeTime=600000
# BLOCK: If maxActive number of connections is reached threads have to wait for a connection.
# FAIL: If maxActive number of connections is reached an exception is thrown.
# GROW: Open more connections even if maxActive is already reached.
# This value is overwritten for OX databases from configdb.
exhaustedAction=GROW
# Validate connections if they are activated. This is not necessary because the
# activation already includes a check if the connection isn't closed.
testOnActivate=false
# Check if connections can be reused after they are returned to the pool.
testOnDeactivate=true
# Not useful for connections.
testOnIdle=false
# if testThreads is set to true, more information is logged to the Open-Xchange
# log files about database connections. If this option is enabled the
# performance may degrade dramatically. The JVM has to generate then a lot of
# method call stack dumps.
testThreads=false
# Force use of write connections
# Must be true in Admin Daemon configuration!
writeOnly=false
Best regards
Bookmarks