Pedantic
Pedantic

Reputation: 1378

Force release the connection in weblogic 10.3.4

I am getting following error in my managed server console on oracle soa server(11g).

--------------------
<Apr 14, 2011 10:51:37 AM SGT> <Warning> <JDBC> <BEA-001153> <Forcibly releasing inactive connection "weblogic.jdbc.wrapper.PoolConnection_oracle_jdbc_driver_T4CConnection@14267" back into the connect
ion pool "JDBC Data Source-0", currently reserved by: java.lang.Exception
        at weblogic.jdbc.common.internal.ConnectionEnv.setup(ConnectionEnv.java:318)
        at weblogic.common.resourcepool.ResourcePoolImpl.reserveResource(ResourcePoolImpl.java:344)
        at weblogic.common.resourcepool.ResourcePoolImpl.reserveResource(ResourcePoolImpl.java:322)
        at weblogic.jdbc.common.internal.ConnectionPool.reserve(ConnectionPool.java:438)
        at weblogic.jdbc.common.internal.ConnectionPool.reserve(ConnectionPool.java:317)
        at weblogic.jdbc.common.internal.ConnectionPoolManager.reserve(ConnectionPoolManager.java:93)
        at weblogic.jdbc.common.internal.RmiDataSource.getPoolConnection(RmiDataSource.java:342)
        at weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSource.java:360)
        at com.ura.dams.registration.dbcontrol.DBConnection.getConnection(DBConnection.java:35)
        at com.ura.dams.registration.dbcontrol.SubmissionUploadDBImpl.executeSelect(SubmissionUploadDBImpl.java:786)
        at com.ura.dams.registration.dbcontrol.SubmissionUploadDBImpl.getSubTypeAndApplTypeInd(SubmissionUploadDBImpl.java:159)
        at com.ura.dams.registration.businesscontrol.UploadSubmissionImpl.getAcceptanceStatus(UploadSubmissionImpl.java:829)
        at com.ura.dams.registration.process.RegistrationUpload.perform2(RegistrationUpload.java:121)
        at orabpel.registrationupload.ExecLetBxExe3.execute(ExecLetBxExe3.java:139)
        at com.collaxa.cube.engine.ext.bpel.common.wmp.BPELxExecWMP.__executeStatements(BPELxExecWMP.java:42)
        at com.collaxa.cube.engine.ext.bpel.common.wmp.BaseBPELActivityWMP.perform(BaseBPELActivityWMP.java:162)
        at com.collaxa.cube.engine.CubeEngine.performActivity(CubeEngine.java:2465)
        at com.collaxa.cube.engine.CubeEngine.handleWorkItem(CubeEngine.java:1132)
        at com.collaxa.cube.engine.dispatch.message.instance.PerformMessageHandler.handleLocal(PerformMessageHandler.java:73)
        at com.collaxa.cube.engine.dispatch.DispatchHelper.handleLocalMessage(DispatchHelper.java:219)
        at com.collaxa.cube.engine.dispatch.DispatchHelper.sendMemory(DispatchHelper.java:327)
        at com.collaxa.cube.engine.CubeEngine.endRequest(CubeEngine.java:4350)
        at com.collaxa.cube.engine.CubeEngine.endRequest(CubeEngine.java:4281)
        at com.collaxa.cube.engine.CubeEngine._createAndInvoke(CubeEngine.java:713)
        at com.collaxa.cube.engine.CubeEngine.createAndInvoke(CubeEngine.java:545)
        at com.collaxa.cube.engine.delivery.DeliveryService.handleInvoke(DeliveryService.java:654)
        at com.collaxa.cube.engine.ejb.impl.CubeDeliveryBean.handleInvoke(CubeDeliveryBean.java:355)
        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 com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
        at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
        at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
        at com.bea.core.repackaged.springframework.jee.intercept.MethodInvocationInvocationContext.proceed(MethodInvocationInvocationContext.java:104)
        at oracle.security.jps.ee.ejb.JpsAbsInterceptor$1.run(JpsAbsInterceptor.java:88)
        at java.security.AccessController.doPrivileged(Native Method)
        at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
        at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:414)
        at oracle.security.jps.wls.JpsWeblogicEjbInterceptor.runJaasMode(JpsWeblogicEjbInterceptor.java:61)
        at oracle.security.jps.ee.ejb.JpsAbsInterceptor.intercept(JpsAbsInterceptor.java:106)
        at oracle.security.jps.ee.ejb.JpsInterceptor.intercept(JpsInterceptor.java:106)
        at sun.reflect.GeneratedMethodAccessor813.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
        at com.bea.core.repackaged.springframework.jee.intercept.JeeInterceptorInterceptor.invoke(JeeInterceptorInterceptor.java:69)
        at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
        at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
        at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
        at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
        at com.bea.core.repackaged.springframework.jee.spi.MethodInvocationVisitorImpl.visit(MethodInvocationVisitorImpl.java:37)
        at weblogic.ejb.container.injection.EnvironmentInterceptorCallbackImpl.callback(EnvironmentInterceptorCallbackImpl.java:54)
        at com.bea.core.repackaged.springframework.jee.spi.EnvironmentInterceptor.invoke(EnvironmentInterceptor.java:50)
        at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
        at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
        at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
        at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
        at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
        at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
        at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
        at $Proxy245.handleInvoke(Unknown Source)
        at com.collaxa.cube.engine.ejb.impl.bpel.BPELDeliveryBean_5k948i_ICubeDeliveryLocalBeanImpl.handleInvoke(BPELDeliveryBean_5k948i_ICubeDeliveryLocalBeanImpl.java:132)
        at com.collaxa.cube.engine.dispatch.message.invoke.InvokeInstanceMessageHandler.handle(InvokeInstanceMessageHandler.java:35)
        at com.collaxa.cube.engine.dispatch.DispatchHelper.handleMessage(DispatchHelper.java:141)
        at com.collaxa.cube.engine.dispatch.BaseDispatchTask.run(BaseDispatchTask.java:82)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:619)
--------------------------------------

Can any one tell me why I am getting this error.

Following is my settings.

I am profiling the connection leak also and i have checked in my application that there is no open connection.

thanks,

Upvotes: 5

Views: 22808

Answers (2)

Nallamachu
Nallamachu

Reputation: 1488

As a work around I am telling this solution to do in the WLS. In WLS Data Source Configuration Inactive Connection Timeout configuration will be present under the advanced configuration. That we have to change it into the 0.

Steps to reach the inactive connection timeout is: Login into the WLS --> click on Data Source --> select Configuration tab --> click on the data_source name --> select Connection Pool under the Configuration tab --> click on Advanced link under the bottom of the page --> Change Inactive Connection Timeout value to 0 from any other value.

This configuration will remove all inactive connections means it will not wait to close connection when it will reach to inactive state. Hope this will help.

Upvotes: -1

Vladimir Dyuzhev
Vladimir Dyuzhev

Reputation: 18336

You have leaked a connection. Didn't close it. It became inactive, but not in the pool. After some time WLS noticed the fact that connection is in fact inactive, i.e. leaked, and forcefully closed it, returning it to the pool.

Here is the place where the connection was open:

 com.ura.dams.registration.dbcontrol.SubmissionUploadDBImpl.executeSelect(SubmissionUploadDBImpl.java:786)

Check the code to see how come close() wasn't called.

Upvotes: 5

Related Questions