jackrabbit-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From mmquelo <mmqu...@gmail.com>
Subject (REPOST: previous one was corrupted) JackRabbit Does Not Close Connections, how to tell him to close them...
Date Fri, 22 Feb 2008 12:22:53 GMT

Hi guys!
 
I have got JBoss 4.2.2, DROOLS BRMS 4.0.4 and Oracle 10g XE as RDBMS.
 
I defined an Oracle XA Datasource as follows:
 
<xa-datasource>
 <jndi-name>jdbc_XA/Drools_Rep</jndi-name>
    <track-connection-by-tx/>
    <isSameRM-override-value>false</isSameRM-override-value>
   
<xa-datasource-class>oracle.jdbc.xa.client.OracleXADataSource</xa-datasource-class>
    <xa-datasource-property
name="URL">jdbc:oracle:thin:@//localhost:1521/xe</xa-datasource-property>
    <xa-datasource-property name="User">...</xa-datasource-property>
    <xa-datasource-property name="Password">...</xa-datasource-property>
   
<exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter</exception-sorter-class-name>
    
   <!-- <prepared-statement-cache-size>0</prepared-statement-cache-size> -->
   <!-- <blocking-timeout-millis>100</blocking-timeout-millis> -->
   <!-- <min-pool-size>2</min-pool-size> -->
   <!-- <max-pool-size>30</max-pool-size> -->

  
<valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleValidConnectionChecker</valid-connection-checker-class-name>
    <no-tx-separate-pools/>
      <metadata>
         <type-mapping>Oracle9i</type-mapping>
      </metadata>
 <use-java-context>false</use-java-context>      
</xa-datasource>
 
This repository is managed with JackRabbit.
 
So i defined the "repository.xml" telling jackrabbit that I want
to persist the rules into the Oracle XA Datasource I previously defined:
 
    <PersistenceManager
class="org.apache.jackrabbit.core.persistence.db.JNDIDatabasePersistenceManager">
     
     
     
       
    </PersistenceManager>
 
Each time I re-access the oracle datasource
the following exception is thrown and the execution stops for 4-5 seconds:
 
12:29:36,170 INFO [CachedConnectionManager] Closing a connection for you.
Please close them yourself:
org.jboss.resource.adapter.jdbc.WrappedConnection@d74f7d
java.lang.Throwable: STACKTRACE
at
org.jboss.resource.connectionmanager.CachedConnectionManager.registerConnection(
CachedConnectionManager.java:290) 
at
org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConnection(
BaseConnectionManager2.java:417) 
at
org.jboss.resource.connectionmanager.BaseConnectionManager2$ConnectionManagerProxy.allocateConnection(
BaseConnectionManager2.java:842) 
at org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(
WrapperDataSource.java:88) 
at
org.apache.jackrabbit.core.persistence.db.JNDIDatabasePersistenceManager.getConnection(
JNDIDatabasePersistenceManager.java:77) 
at
org.apache.jackrabbit.core.persistence.db.DatabasePersistenceManager.initConnection(
DatabasePersistenceManager.java:730) 
at
org.apache.jackrabbit.core.persistence.db.DatabasePersistenceManager.reestablishConnection(
DatabasePersistenceManager.java:806) 
at
org.apache.jackrabbit.core.persistence.db.DatabasePersistenceManager.executeStmt(
DatabasePersistenceManager.java:852) 
at
org.apache.jackrabbit.core.persistence.db.DatabasePersistenceManager.exists(
DatabasePersistenceManager.java:673) 
at
org.apache.jackrabbit.core.state.SharedItemStateManager.hasNonVirtualItemState(
SharedItemStateManager.java:1104) 
at org.apache.jackrabbit.core.state.SharedItemStateManager.hasItemState(
SharedItemStateManager.java:289) 
at org.apache.jackrabbit.core.state.LocalItemStateManager.hasItemState(
LocalItemStateManager.java:180) 
at org.apache.jackrabbit.core.state.XAItemStateManager.hasItemState(
XAItemStateManager.java:252) 
at org.apache.jackrabbit.core.state.SessionItemStateManager.hasItemState(
SessionItemStateManager.java:199) 
at org.apache.jackrabbit.core.ItemManager.itemExists(
ItemManager.java:258) 
at org.apache.jackrabbit.core.NodeImpl.hasProperty(
NodeImpl.java:2708) 
at org.drools.repository.PackageItem.getCompiledPackageBytes(
PackageItem.java:666) 
at org.drools.brms.server.files.FileManagerUtils.loadBinaryPackage(
FileManagerUtils.java:146) 
at sun.reflect.NativeMethodAccessorImpl.invoke0(
Native Method) 
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.jboss.seam.util.Reflections.invoke(
Reflections.java:21) 
at org.jboss.seam.intercept.RootInvocationContext.proceed(
RootInvocationContext.java:31) 
at org.jboss.seam.intercept.SeamInvocationContext.proceed(
SeamInvocationContext.java:56) 
at org.jboss.seam.transaction.RollbackInterceptor.aroundInvoke(
RollbackInterceptor.java:31) 
at org.jboss.seam.intercept.SeamInvocationContext.proceed(
SeamInvocationContext.java:68) 
at org.jboss.seam.core.BijectionInterceptor.aroundInvoke(
BijectionInterceptor.java:46) 
at org.jboss.seam.intercept.SeamInvocationContext.proceed(
SeamInvocationContext.java:68) 
at org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(
MethodContextInterceptor.java:42) 
at org.jboss.seam.intercept.SeamInvocationContext.proceed(
SeamInvocationContext.java:68) 
at org.jboss.seam.security.SecurityInterceptor.aroundInvoke(
SecurityInterceptor.java:40) 
at org.jboss.seam.intercept.SeamInvocationContext.proceed(
SeamInvocationContext.java:68) 
at org.jboss.seam.intercept.RootInterceptor.invoke(
RootInterceptor.java:106) 
at org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(
JavaBeanInterceptor.java:155) 
at org.jboss.seam.intercept.JavaBeanInterceptor.invoke(
JavaBeanInterceptor.java:91) 
at
org.drools.brms.server.files.FileManagerUtils_$$_javassist_1.loadBinaryPackage(FileManagerUtils_$$_javassist_1.java)
at org.drools.brms.server.files.PackageDeploymentServlet.doGet(
PackageDeploymentServlet.java:99) 
at javax.servlet.http.HttpServlet.service(
HttpServlet.java:690) 
at javax.servlet.http.HttpServlet.service(
HttpServlet.java:803) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:290) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:206) 
at org.jboss.seam.web.ContextFilter$1.process(
ContextFilter.java:42) 
at org.jboss.seam.servlet.ContextualHttpServletRequest.run(
ContextualHttpServletRequest.java:46) 
at org.jboss.seam.web.ContextFilter.doFilter(
ContextFilter.java:37) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:235) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:206) 
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(
ReplyHeaderFilter.java:96) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:235) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:206) 
at org.apache.catalina.core.StandardWrapperValve.invoke(
StandardWrapperValve.java:230) 
at org.apache.catalina.core.StandardContextValve.invoke(
StandardContextValve.java:175) 
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(
SecurityAssociationValve.java:179) 
at org.jboss.web.tomcat.security.JaccContextValve.invoke(
JaccContextValve.java:84) 
at org.apache.catalina.core.StandardHostValve.invoke(
StandardHostValve.java:127) 
at org.apache.catalina.valves.ErrorReportValve.invoke(
ErrorReportValve.java:102) 
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(
CachedConnectionValve.java:157) 
at org.apache.catalina.core.StandardEngineValve.invoke(
StandardEngineValve.java:109) 
at org.apache.catalina.connector.CoyoteAdapter.service(
CoyoteAdapter.java:262) 
at org.apache.coyote.http11.Http11Processor.process(
Http11Processor.java:844) 
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(
Http11Protocol.java:583) 
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(
JIoEndpoint.java:446) 
at java.lang.Thread.run(Unknown Source) 

As u can see, each time jboss tries to access the DS, it finds
a previous connection opened, so Jboss HAS TO close it by itself!

As far as U know, Is there any way to tell JackRabbit that he has to close
connections ?

Hibernate has something like that so I expect that JackRabbit does the
same...
I already tried to redefine the XA datasource setting some tags related to
the
"connection\connection pools" but it did not work...that's why I am quite
sure
the problem has to be focused on jackrabbit!

Hopefully You can help me.

Thank you anyway.

If u want you can answer me to m.magistri@reply.it as well.

Bye.

Massi
-- 
View this message in context: http://www.nabble.com/%28REPOST%3A-previous-one-was-corrupted%29-JackRabbit-Does-Not-Close-Connections%2C-how-to-tell-him-to-close-them...-tp15632873p15632873.html
Sent from the Jackrabbit - Users mailing list archive at Nabble.com.


Mime
View raw message