View # of current Connection of jdbc connection pool
Do you guy know of ANY METHODS of viewing # of current database Connection of jdbc connection pool in SUNAPP SERVER?
for example i have jdbc/Dashboard Connection Pool in SUNAPP SERVER and I wanted to view, at any point of time, how many connection database that it is being utilized during that time. The reason I wanted to see the # of currection jdbc connection is because my Max (400connections) ran out or hanging really long period of time.
Thanks,
Kelvin
There is no way currently to do this
Similar Messages
-
Create a view in the database based off a jdbc connection
I have some data in a DB2 database that I would like to union with a table in an Oracle Database in the Oracle Database.
Can I create a jdbc connection in the Oracle database that points to the DB2 database and then create a view based off of the jdbc connection?
I've never done anything like this , but if this a no brainer please just post a link or something that points me in the right direction thanks...
I've searched...Mark,
I was going to suggest the same thing as Jan did when she answered this question that you also posted to the Union DB2 and Oracle data in a view and display in a form using jdbc? forum.
Good Luck,
Avi. -
JBO-26061: Error while opening JDBC connection : ADF Related Problem?
I would like to ask whether there is an impact when you set the PS_TXN and PS_TXN_SEQ database objects for a ADF Application?(http://chrismuir.sys-con.com/node/1067419/mobile)
The Datasources are all good when tested in the admin server for connectivity. The connection is somewhat intermittent.
I’m seeing this error in the logs:
[NOTIFICATION] [J2EE JSP-00008] [oracle.j2ee.jsp] [tid: [ACTIVE].ExecuteThread: '213' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: nadeesha_75314] [ecid: 000003_ji^BBd5o6wVmZMG001r0u000eaO,0:1] [APP: CRMApplication_201210181330#V3.3] [dcid: ce18b6ae9d1d3aad:44d00d73:13a8abb0db4:-8000-000000000001821d] [URI: /CRMApplication/faces/cxcare/CustomerCare.jspx] [arg: The following exception occurred:] unable to dispatch JSP page: The following exception occurred:.[[
oracle.jbo.DMLException: JBO-26061: Error while opening JDBC connection.
at oracle.jbo.server.DBTransactionImpl.establishNewConnection(DBTransactionImpl.java:972)
at oracle.jbo.server.DBTransactionImpl.initTransaction(DBTransactionImpl.java:1112)
at oracle.jbo.server.DBTransactionImpl.initTxn(DBTransactionImpl.java:6372)
at oracle.jbo.server.DBTransactionImpl2.connectToDataSource(DBTransactionImpl2.java:286)
at oracle.jbo.server.DBTransactionImpl2.connectToDataSource(DBTransactionImpl2.java:309)
at oracle.jbo.common.ampool.DefaultConnectionStrategy.connect(DefaultConnectionStrategy.java:203)
at oracle.jbo.server.ApplicationPoolMessageHandler.doPoolConnect(ApplicationPoolMessageHandler.java:562)
at oracle.jbo.server.ApplicationPoolMessageHandler.doPoolMessage(ApplicationPoolMessageHandler.java:410)
at oracle.jbo.server.ApplicationModuleImpl.doPoolMessage(ApplicationModuleImpl.java:8651)
at oracle.jbo.common.ampool.ApplicationPoolImpl.sendPoolMessage(ApplicationPoolImpl.java:4405)
at oracle.jbo.common.ampool.ApplicationPoolImpl.prepareApplicationModule(ApplicationPoolImpl.java:2391)
at oracle.jbo.common.ampool.ApplicationPoolImpl.doCheckout(ApplicationPoolImpl.java:2203)
at oracle.jbo.common.ampool.ApplicationPoolImpl.useApplicationModule(ApplicationPoolImpl.java:3101)
at oracle.jbo.common.ampool.SessionCookieImpl.useApplicationModule(SessionCookieImpl.java:460)
at oracle.jbo.http.HttpSessionCookieImpl.useApplicationModule(HttpSessionCookieImpl.java:234)
at oracle.jbo.common.ampool.SessionCookieImpl.useApplicationModule(SessionCookieImpl.java:431)
at oracle.jbo.common.ampool.SessionCookieImpl.useApplicationModule(SessionCookieImpl.java:426)
at oracle.adf.model.bc4j.DCJboDataControl.initializeApplicationModule(DCJboDataControl.java:476)
at oracle.adf.model.bc4j.DCJboDataControl.getApplicationModule(DCJboDataControl.java:855)
at oracle.adf.model.binding.DCDataControl.setErrorHandler(DCDataControl.java:476)
at oracle.jbo.uicli.binding.JUApplication.setErrorHandler(JUApplication.java:261)
at oracle.adf.model.BindingContext.put(BindingContext.java:1230)
at oracle.adf.model.binding.DCDataControlReference.getDataControl(DCDataControlReference.java:173)
at oracle.adf.model.BindingContext.instantiateDataControl(BindingContext.java:964)
at oracle.adf.model.dcframe.DataControlFrameImpl.doFindDataControl(DataControlFrameImpl.java:1210)
at oracle.adf.model.dcframe.DataControlFrameImpl.internalFindDataControl(DataControlFrameImpl.java:1113)
at oracle.adf.model.dcframe.DataControlFrameImpl.findDataControl(DataControlFrameImpl.java:1073)
at oracle.adf.model.BindingContext.internalFindDataControl(BindingContext.java:1076)
at oracle.adf.model.BindingContext.get(BindingContext.java:1042)
at oracle.adf.model.binding.DCUtil.findSpelObject(DCUtil.java:305)
at oracle.adf.model.binding.DCBindingContainer.evaluateParameterWithElCheck(DCBindingContainer.java:1486)
at oracle.adf.model.binding.DCBindingContainer.findDataControl(DCBindingContainer.java:1564)
at oracle.jbo.uicli.binding.JUCtrlActionBinding.getDataControl(JUCtrlActionBinding.java:556)
at oracle.jbo.uicli.binding.JUCtrlActionBinding.internalCheckPermission(JUCtrlActionBinding.java:2028)
at oracle.jbo.uicli.binding.JUCtrlActionBinding.invoke(JUCtrlActionBinding.java:726)
at oracle.adf.controller.v2.lifecycle.PageLifecycleImpl.executeEvent(PageLifecycleImpl.java:394)
at oracle.adfinternal.view.faces.model.binding.FacesCtrlActionBinding._execute(FacesCtrlActionBinding.java:252)
at oracle.adfinternal.view.faces.model.binding.FacesCtrlActionBinding.execute(FacesCtrlActionBinding.java:210)
at sun.reflect.GeneratedMethodAccessor1079.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:600)
at com.sun.el.parser.AstValue.invoke(AstValue.java:157)
at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:283)
<Oct 22, 2012 3:13:48 PM IST> <Warning> <JDBC> <BEA-001153> <Forcibly releasing inactive connection "weblogic.jdbc.wrapper.PoolConnection_oracle_jdbc_driver_T4CConnection@7e16" back into the connection pool "REPTSTDS_NODE1", currently reserved by: null.>
oracle.jbo.DMLException: JBO-26061: Error while opening JDBC connection.
at oracle.jbo.server.DBTransactionImpl.establishNewConnection(DBTransactionImpl.java:972)
at oracle.jbo.server.DBTransactionImpl.getInternalConnection(DBTransactionImpl.java:1360)
at oracle.jbo.server.DBSerializer.setup(DBSerializer.java:137)
at oracle.jbo.server.DBSerializer.passivateRootAM(DBSerializer.java:283)
at oracle.jbo.server.DBSerializer.passivateRootAM(DBSerializer.java:264)
at oracle.jbo.server.ApplicationModuleImpl.passivateStateInternal(ApplicationModuleImpl.java:5672)
at oracle.jbo.server.ApplicationModuleImpl.passivateState(ApplicationModuleImpl.java:5543)
at oracle.jbo.server.ApplicationPoolMessageHandler.doPoolMessage(ApplicationPoolMessageHandler.java:372)
at oracle.jbo.server.ApplicationModuleImpl.doPoolMessage(ApplicationModuleImpl.java:8651)
at oracle.jbo.common.ampool.ApplicationPoolImpl.sendPoolMessage(ApplicationPoolImpl.java:4405)
at oracle.jbo.common.ampool.ApplicationPoolImpl.manageReferencingState(ApplicationPoolImpl.java:1415)
at oracle.jbo.common.ampool.ApplicationPoolImpl.recycleReferencedInstance(ApplicationPoolImpl.java:2477)
at oracle.jbo.common.ampool.ApplicationPoolImpl.prepareApplicationModule(ApplicationPoolImpl.java:2298)
at oracle.jbo.common.ampool.ApplicationPoolImpl.doCheckout(ApplicationPoolImpl.java:2203)
at oracle.jbo.common.ampool.ApplicationPoolImpl.useApplicationModule(ApplicationPoolImpl.java:3101)
at oracle.jbo.common.ampool.SessionCookieImpl.useApplicationModule(SessionCookieImpl.java:460)
at oracle.jbo.http.HttpSessionCookieImpl.useApplicationModule(HttpSessionCookieImpl.java:234)
at oracle.jbo.common.ampool.SessionCookieImpl.useApplicationModule(SessionCookieImpl.java:431)
at oracle.jbo.common.ampool.SessionCookieImpl.useApplicationModule(SessionCookieImpl.java:426)
at oracle.adf.model.bc4j.DCJboDataControl.initializeApplicationModule(DCJboDataControl.java:476)
at oracle.adf.model.bc4j.DCJboDataControl.getApplicationModule(DCJboDataControl.java:855)
at oracle.adf.model.binding.DCBindingContainer.findDataControl(DCBindingContainer.java:1616)
at oracle.adf.model.binding.DCIteratorBinding.initDataControl(DCIteratorBinding.java:2433)
at oracle.adf.model.binding.DCIteratorBinding.getDataControl(DCIteratorBinding.java:2378)
at oracle.adf.model.binding.DCBindingContainer.getOrderedVOUsageList(DCBindingContainer.java:4771)
at oracle.adf.model.binding.DCDataControl.reportException(DCDataControl.java:397)
at oracle.adf.model.binding.DCBindingContainer.reportException(DCBindingContainer.java:412)
at oracle.adf.model.binding.DCBindingContainer.reportException(DCBindingContainer.java:467)
at oracle.adf.model.binding.DCControlBinding.reportException(DCControlBinding.java:202)
at oracle.jbo.uicli.binding.JUCtrlActionBinding.reportException(JUCtrlActionBinding.java:2006)
at oracle.jbo.uicli.binding.JUCtrlActionBinding.doIt(JUCtrlActionBinding.java:1650)
at oracle.adf.model.binding.DCDataControl.invokeOperation(DCDataControl.java:2141)
at oracle.jbo.uicli.binding.JUCtrlActionBinding.invoke(JUCtrlActionBinding.java:730)
at oracle.adf.controller.v2.lifecycle.PageLifecycleImpl.executeEvent(PageLifecycleImpl.java:394)
at oracle.adfinternal.view.faces.model.binding.FacesCtrlActionBinding._execute(FacesCtrlActionBinding.java:252)
at oracle.adfinternal.view.faces.model.binding.FacesCtrlActionBinding.execute(FacesCtrlActionBinding.java:210)
at lk.dialog.ccbs.view.cxcare.bean.CustomerCareInterfaceBean.getCxCLVScore(CustomerCareInterfaceBean.java:848)
at lk.dialog.ccbs.view.cxcare.bean.ContractBean.displayCLVLogos(ContractBean.java:130)
at lk.dialog.ccbs.view.cxcare.bean.ContractBean.allInitMethodForContract(ContractBean.java:720)
at lk.dialog.ccbs.view.cxcare.bean.SearchBean.initAllMethods(SearchBean.java:364)
at lk.dialog.ccbs.view.cxcare.bean.SearchBean.cbMobileSearchAL(SearchBean.java:95)
at sun.reflect.GeneratedMethodAccessor1517.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:600)
at com.sun.el.parser.AstValue.invoke(AstValue.java:157)
at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:283)
at org.apache.myfaces.trinidadinternal.taglib.util.MethodExpressionMethodBinding.invoke(MethodExpressionMethodBinding.java:53)
at org.apache.myfaces.trinidad.component.UIXComponentBase.broadcastToMethodBinding(UIXComponentBase.java:1259)
at org.apache.myfaces.trinidad.component.UIXCommand.broadcast(UIXCommand.java:183)
at oracle.adf.view.rich.component.fragment.UIXRegion.broadcast(UIXRegion.java:148)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:90)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:309)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:94)
at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:97)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:90)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:309)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:94)
at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:91)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.broadcastEvents(LifecycleImpl.java:812)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:292)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:177)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:191)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:97)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:247)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:157)
at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:94)
at java.security.AccessController.doPrivileged(AccessController.java:284)
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.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:138)
at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.security.wls.filter.SSOSessionSynchronizationFilter.doFilter(SSOSessionSynchronizationFilter.java:279)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:159)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.dms.wls.DMSServletFilter.doFilter(DMSServletFilter.java:330)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.doIt(WebAppServletContext.java:3684)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3650)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2268)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2174)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1446)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
Caused by: java.sql.SQLException: Cannot obtain connection: driverURL = jdbc:weblogic:pool:REPTSTDS, props = {}.
Nested Exception: java.lang.RuntimeException: Failed to setAutoCommit to true for pool connection.
at weblogic.jdbc.wrapper.PoolConnection.init(PoolConnection.java:49)
at weblogic.jdbc.pool.Driver.allocateConnection(Driver.java:252)
at weblogic.jdbc.pool.Driver.connect(Driver.java:163)
at weblogic.jdbc.jts.Driver.getNonTxConnection(Driver.java:652)
at weblogic.jdbc.jts.Driver.connect(Driver.java:127)
at weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSource.java:355)
at oracle.jbo.server.DBTransactionImpl.establishNewConnection(DBTransactionImpl.java:939)
at oracle.jbo.server.DBTransactionImpl.getInternalConnection(DBTransactionImpl.java:1360)
at oracle.jbo.server.DBSerializer.setup(DBSerializer.java:137)
at oracle.jbo.server.DBSerializer.passivateRootAM(DBSerializer.java:283)
at oracle.jbo.server.DBSerializer.passivateRootAM(DBSerializer.java:264)
at oracle.jbo.server.ApplicationModuleImpl.passivateStateInternal(ApplicationModuleImpl.java:5672)
at oracle.jbo.server.ApplicationModuleImpl.passivateState(ApplicationModuleImpl.java:5543)
at oracle.jbo.server.ApplicationPoolMessageHandler.doPoolMessage(ApplicationPoolMessageHandler.java:372)
at oracle.jbo.server.ApplicationModuleImpl.doPoolMessage(ApplicationModuleImpl.java:8651)
at oracle.jbo.common.ampool.ApplicationPoolImpl.sendPoolMessage(ApplicationPoolImpl.java:4405)
at oracle.jbo.common.ampool.ApplicationPoolImpl.manageReferencingState(ApplicationPoolImpl.java:1415)
at oracle.jbo.common.ampool.ApplicationPoolImpl.recycleReferencedInstance(ApplicationPoolImpl.java:2477)
at oracle.jbo.common.ampool.ApplicationPoolImpl.prepareApplicationModule(ApplicationPoolImpl.java:2298)
at oracle.jbo.common.ampool.ApplicationPoolImpl.doCheckout(ApplicationPoolImpl.java:2203)
at oracle.jbo.common.ampool.ApplicationPoolImpl.useApplicationModule(ApplicationPoolImpl.java:3101)
at oracle.jbo.common.ampool.SessionCookieImpl.useApplicationModule(SessionCookieImpl.java:460)
at oracle.jbo.http.HttpSessionCookieImpl.useApplicationModule(HttpSessionCookieImpl.java:234)
at oracle.jbo.common.ampool.SessionCookieImpl.useApplicationModule(SessionCookieImpl.java:431)
at oracle.jbo.common.ampool.SessionCookieImpl.useApplicationModule(SessionCookieImpl.java:426)
at oracle.adf.model.bc4j.DCJboDataControl.initializeApplicationModule(DCJboDataControl.java:476)
at oracle.adf.model.bc4j.DCJboDataControl.getApplicationModule(DCJboDataControl.java:855)
at oracle.adf.model.binding.DCBindingContainer.findDataControl(DCBindingContainer.java:1616)
at oracle.adf.model.binding.DCIteratorBinding.initDataControl(DCIteratorBinding.java:2433)
at oracle.adf.model.binding.DCIteratorBinding.getDataControl(DCIteratorBinding.java:2378)
at oracle.adf.model.binding.DCBindingContainer.getOrderedVOUsageList(DCBindingContainer.java:4771)
at oracle.adf.model.binding.DCDataControl.reportException(DCDataControl.java:397)
at oracle.adf.model.binding.DCBindingContainer.reportException(DCBindingContainer.java:412)
at oracle.adf.model.binding.DCBindingContainer.reportException(DCBindingContainer.java:467)
at oracle.adf.model.binding.DCControlBinding.reportException(DCControlBinding.java:202)
at oracle.jbo.uicli.binding.JUCtrlActionBinding.reportException(JUCtrlActionBinding.java:2006)
at oracle.jbo.uicli.binding.JUCtrlActionBinding.doIt(JUCtrlActionBinding.java:1650)
at oracle.adf.model.binding.DCDataControl.invokeOperation(DCDataControl.java:2141)
at oracle.jbo.uicli.binding.JUCtrlActionBinding.invoke(JUCtrlActionBinding.java:730)
at oracle.adf.controller.v2.lifecycle.PageLifecycleImpl.executeEvent(PageLifecycleImpl.java:394)
at oracle.adfinternal.view.faces.model.binding.FacesCtrlActionBinding._execute(FacesCtrlActionBinding.java:252)
at oracle.adfinternal.view.faces.model.binding.FacesCtrlActionBinding.execute(FacesCtrlActionBinding.java:210)
at lk.dialog.ccbs.view.cxcare.bean.CustomerCareInterfaceBean.getCxCLVScore(CustomerCareInterfaceBean.java:848)
at lk.dialog.ccbs.view.cxcare.bean.ContractBean.displayCLVLogos(ContractBean.java:130)
at lk.dialog.ccbs.view.cxcare.bean.ContractBean.allInitMethodForContract(ContractBean.java:720)
at lk.dialog.ccbs.view.cxcare.bean.SearchBean.initAllMethods(SearchBean.java:364)
at lk.dialog.ccbs.view.cxcare.bean.SearchBean.cbMobileSearchAL(SearchBean.java:95)
at sun.reflect.GeneratedMethodAccessor1517.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:600)
at com.sun.el.parser.AstValue.invoke(AstValue.java:157)
at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:283)
at org.apache.myfaces.trinidadinternal.taglib.util.MethodExpressionMethodBinding.invoke(MethodExpressionMethodBinding.java:53)
at org.apache.myfaces.trinidad.component.UIXComponentBase.broadcastToMethodBinding(UIXComponentBase.java:1259)
at org.apache.myfaces.trinidad.component.UIXCommand.broadcast(UIXCommand.java:183)
at oracle.adf.view.rich.component.fragment.UIXRegion.broadcast(UIXRegion.java:148)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:90)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:309)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:94)
at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:97)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:90)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:309)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:94)
at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:91)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.broadcastEvents(LifecycleImpl.java:812)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:292)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:177)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:191)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:97)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:247)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:157)
at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:94)
at java.security.AccessController.doPrivileged(AccessController.java:284)
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.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:138)
at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.security.wls.filter.SSOSessionSynchronizationFilter.doFilter(SSOSessionSynchronizationFilter.java:279)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:159)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.dms.wls.DMSServletFilter.doFilter(DMSServletFilter.java:330)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.doIt(WebAppServletContext.java:3684)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3650)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2268)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2174)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1446)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
at weblogic.jdbc.jts.Driver.wrapAndThrowSQLException(Driver.java:601)
at weblogic.jdbc.jts.Driver.getNonTxConnection(Driver.java:656)
at weblogic.jdbc.jts.Driver.connect(Driver.java:127)
at weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSource.java:355)
at oracle.jbo.server.DBTransactionImpl.establishNewConnection(DBTransactionImpl.java:939)
... 100 more
## Detail 0 ##Probably you should check first the settings of your DataSource. My guess is that the DS hands out a borked or dead connection. The DS should be set to check the state of the connection on reserve. There are also some timing related settings...
Sascha -
Hi All,
I am using connection pool from Sun Webserver 6.1
my code lookes like this
InitialContext ctx = new InitialContext();
String dsName = "java:comp/env/jdbc/abc";
DataSource ds = (javax.sql.DataSource) ctx.lookup(dsName);
conn = ds.getConnection();
stmt = conn.createStatement();
String query = "select * from abc";
rs = stmt.executeQuery(query);
while (rs.next()) {
System.out.println(rs.getString(1));
System.out.println(rs.getString(2));
Now my questions is what do i need to do If need to close or release this connection? Do I really need to relase the connection or JDBC connection pool takes care of that?
Do I really need to call
conn.close();
or some thing else?
Any help would be great.
Thanks
Message was edited by:
bplboy..Do I really need to call
conn.close();Yes, you really need to call close(). Not only that, but you need to ensure that close is called even if there's an error. Typically:
conn = ds.getConnection();
try {
} catch( ... ) {
} finally {
try {
if( conn != null ) conn.close();
} catch( SQLException e ) {
log.warn("Could not close ostensibly open connection",e);
}If you don't do this you'll leak away all your connections, then your application will freeze once you hit the upper limit on the pool size.
You should also ensure that ResultSets and Statements are closed, in order, before you discard their references. Typically failing to close one is not as catastrophic as failing to close connections, but it can still have nasty side effects! -
Compression via JDBC connection
Hi,
I am looking for alternatives or option using compression via JDBC thin or OCI connection. I am using JDK 1.6X on Sun platform and my Oracle Database version is 11.1.2.0. Is there any way to compress my data stream while connecting to JDBC connection ? I did tried knowledge base but didn't find a concrete answer from there?Mechanisms like that are always a trade off one which doesn't necessarily work over time.
The problem is that one is trading CPU time for network bandwidth. And relation between those can vary greatly in a short amount of time.
In terms of absolute performance the best way is to create a design that minimizes volume and size. -
Infinite loop - A stale JDBC connection was detected in the connection pool
Hello.
I have a simple JSP (no servlets) application with a single Fastlane Reader style view object to back it up. I'm deploying my application under OC4J 10g 9.0.4 using BC4J 9.0.3.11.50 (JDev 9.0.3.3) on RHEL 3.0, j2sdk1.4.2_03.
I run with -Djbo.debugoutput=console
Every so often, intermittently, and totally unpredictably, I see this on stdout for OC4J:
03/12/23 07:42:07 [33326] A stale JDBC connection was detected in the connection pool
03/12/23 07:42:07 [33327] Creating a new pool resource
03/12/23 07:42:07 [33328] Trying connection/2: url='jdbc:oracle:thin:@somedb:1521:somedbsid' info='{user=someuser, password=somepass, dll=ocijdbc9, protocol=thin}' ...
This message occurs over and over ultimately resulting in hundreds upon thousands of failed connections to the database. I have to forcibly restart OC4J to stop it.
The weird thing about it is that it seems to only start doing this on one system (which is our internal deployment site); it works fine under an OC4J running in IDE or on a preproduction machine.
Has anyone experienced this before - or at the very least, can clue me in on getting BC4J to be a little more verbose on the connection failure?
Thanks and Happy Holidays,
SeanHi did you find an answer?
if so, could you post it here?
thanks -
Got ResourceLimitException having 0 connection in JDBC Pool monitoring
We use Weblogic 8.1 SP5 (8.1.5).
The Error is:
weblogic.jdbc.extensions.PoolLimitSQLException:
weblogic.common.resourcepool.ResourceLimitException: No resources currently available in pool STMECO-WWW-DATABASE-P to allocate to applications, please increase the size of the pool and retry..
The config.xml is:
<JDBCConnectionPool
DriverName="oracle.jdbc.driver.OracleDriver"
InitialCapacity="25" Name="STMECO-WWW-DATABASE-P"
PasswordEncrypted="secret"
Properties="user=dsc;dll=ocijdbc9;protocol=thin"
Targets="dscapplsrv" TestConnectionsOnCreate="true"
TestConnectionsOnRelease="true" TestConnectionsOnReserve="true"
TestTableName="[email protected]@STMECO" URL="jdbc:oracle:thin:@cicp02:1521:P10PA50"
/>
Using the console:
Initial Capacity: 25
Maximum Capacity: 25
Capacity Increment: 1
Seconds to trust an idle pool connection: 0
Remove Infected Connections Enabled: True
Allow Shrinking: True
Shrink Frequency: 900
Enable Connection Leak Profiling: False
Enable Connection Profiling: False
Test Frequency: 0 seconds
Test Reserved Connections: True
Test Created Connections: True
Connection Reserve Timeout: 10 seconds
Connection Creation Retry Frequency: 0 second
Inactive Connection Timeout: 0 second
Maximum Waiting for Connection: 2147483647
Maximum Connections Made Unavailable: 0
Test Table Name: [email protected]@STMECO
The solution to the problem after the error was to restart the managed and admin servers. The states before and after the restart was:
Before Restart After restart
= After Errors = No more Error
Connection delay time: 87 81
Connections 0 0
Connection high: 9 3
Connection total: 100 25
Wait seconds high: 10 0
Waiters: 4 0
Waiters high: 20 0
My questions are:
1) How is it possible to have this errors with 0 connection?
2) How is it possible to have "Connection total: 100" with a maximum capacity of 25?
3) I see 4 Waiters and 0 connection. Why?
4) Only a restart solved the problem. No action under Control (reset, suspend ...) was possible. Why?
Thank's a lot for your help
Jean-Michelhoumard wrote:
We use Weblogic 8.1 SP5 (8.1.5).
The Error is:
weblogic.jdbc.extensions.PoolLimitSQLException:
weblogic.common.resourcepool.ResourceLimitException: No resources
currently available in pool STMECO-WWW-DATABASE-P to allocate to
applications, please increase the size of the pool and retry..
The config.xml is:
<JDBCConnectionPool
DriverName="oracle.jdbc.driver.OracleDriver"
InitialCapacity="25" Name="STMECO-WWW-DATABASE-P"
PasswordEncrypted="secret"
Properties="user=dsc;dll=ocijdbc9;protocol=thin"
Targets="dscapplsrv" TestConnectionsOnCreate="true"
TestConnectionsOnRelease="true" TestConnectionsOnReserve="true"
TestTableName="[email protected]@STMECO" URL="jdbc:oracle:thin:@cicp02:1521:P10PA50"
/>
Using the console:
Initial Capacity: 25
Maximum Capacity: 25
Capacity Increment: 1
Seconds to trust an idle pool connection: 0
Remove Infected Connections Enabled: True
Allow Shrinking: True
Shrink Frequency: 900
Enable Connection Leak Profiling: False
Enable Connection Profiling: False
Test Frequency: 0 seconds
Test Reserved Connections: True
Test Created Connections: True
Connection Reserve Timeout: 10 seconds
Connection Creation Retry Frequency: 0 second
Inactive Connection Timeout: 0 second
Maximum Waiting for Connection: 2147483647
Maximum Connections Made Unavailable: 0
Test Table Name: [email protected]@STMECO
The solution to the problem after the error was to restart the managed and admin servers. The states before and after the restart was:
Before Restart After restart
= After Errors = No more Error
Connection delay time: 87 81
Connections 0 0
Connection high: 9 3
Connection total: 100 25
Wait seconds high: 10 0
Waiters: 4 0
Waiters high: 20 0
My questions are:
1) How is it possible to have this errors with 0 connection?0 connections means the pool may have gotten rid of all the
connections it had, because they failed, and it was unable
to get the DBMS to give it replacements. The error counts
accrued before, while using any previously held connections.
2) How is it possible to have "Connection total: 100" with a maximum capacity of 25?That means that for the life of the pool it started with 25 connections, and
had to close and replace them each three times on average, having created 100
connections in total so far, though never having more than 25 at a time.
3) I see 4 Waiters and 0 connection. Why?A thread dump would probably show each waiter thread waiting for the Oracle
driver to give the pool a new connection.
4) Only a restart solved the problem. No action under Control (reset, suspend ...) was possible. Why?It sounds like a serious oracle problem. If I can see a full server thread dump
it would tell me much. I recommend turning off test-on-create, and test-on-release.
Those two are usually a waste of time. Test-on-reserve gives all the guarantee
you need. Also, why is your test table defined that way? Isn't 'DUAL' enough?
If you are testing access to a remote DBMS, if that is failing, it may be causing
your symptoms.
Joe
Thank's a lot for your help
Jean-Michel -
Obtaining an oracle.sql.STRUCT through a pooled JDBC connection
Hello,
I am using WebLogic Server 10 and and Oracle 10 and I am trying to obtain a vendor-specific oracle.sql.STRUCT from a ResultSet using a pooled connection defined in Weblogic. I need the vendor-specific object, rather than simply the java.sql.Struct implementation, because a third party library requires it.
What gets returned in the ResultSet is a non-exposed WebLogic wrapper object which implements java.sql.Struct, but which cannot be cast to an oracle.sql.STRUCT. I can use reflection on this object to find and call the getVendorObj() method to obtain the oracle.sql.STRUCT, but this solution is not acceptable because this is not a published API and is not guaranteed not to change in future versions.
How can I reliably obtain a vendor-specific implementation of java.sql.Struct through a WebLogic connection pool in WebLogic Server 10?
Thanks for any advice,
-Dan Schwemleindan schwemlein wrote:
Joe,
Thanks again. With your guidance, I have arrived at the following approach, which I'll post for the benefit of others, and which I'd be thankful if you would validate:
1) Import the jar com.bea.core.datasource-1.0.0.0.jar from %BEA_HOME%\modules, which is the only location of the class WLConnection, which is the only class with the getVendorConnection() method you refer to.
2) Get the logical connection from the pooled data source, cast it to a WLConnection, call getVendorConnection() to obtain an OracleConnection (from the ojdbc jar), and use this connection to obtain the required oracle.sql.STRUCT from an OracleResultSet.
3) Be aware of the limitations and follow the guidelines in the document http://e-docs.bea.com/wls/docs81/jdbc/thirdparty.html#1043646 regarding security, error handling, releasing resources (close only the logical connection), etc.
Does this sound like the approach you had in mind?
Thanks again,
-Danyes.
Joe
>
Re: Obtaining an oracle.sql.STRUCT through a pooled JDBC connection
Posted: Jul 16, 2007 3:21 PM
dan schwemlein wrote:
Thanks for the quick response!I was working today...
Thank you for the information about the connection being closed.
I will look into using this configuration setting.
You say that you can describe a way to get a handle on an unwrapped
pool object using some documented WLS-specific code. Are you referring
here to the getVendorConnection() method?yes.
This method does not help me
get the oracle.sql.STRUCT object, because even the connection returned
by getVendorConnection() returns a wrapped WL java.sql.Struct object
from a call to getObject().I don't believe it. If you are running in WLS, with a local pool,
the getVendorConnection() will give you the Oracle connection,
which will give you an Oracle statement, etc, down to an oracle
STRUCT object. Once you have a direct reference to the oracle connection,
we're not in the picture when it returns something to you.
It would be great if getVendorObj() were
documented and could be counted on in future versions. To use this
method, one would still have to access it via Java reflection, because
the wrapper class and its getVendorObj() method would be exposed in an
API, correct? Could this method be exposed in the API, so that reflection
doesn't need to be used, or it is exposed somewhere that isn't documented?getVendorObj() is not yet exposed or therefore supported for the general
wrapped object, so you would have to start from the connection and
derive all subobjects from it.
Thanks again,
-Dan Schwemlein
Hello,
I am using WebLogic Server 10 and and Oracle 10 and I am trying to obtain a
vendor-specific oracle.sql.STRUCT from a ResultSet using a pooled connection
defined in Weblogic. I need the vendor-specific object, rather than simply
the java.sql.Struct implementation, because a third party library requires it.
What gets returned in the ResultSet is a non-exposed WebLogic wrapper object
which implements java.sql.Struct, but which cannot be cast to an oracle.sql.STRUCT.
I can use reflection on this object to find and call the getVendorObj() method to
obtain the oracle.sql.STRUCT, but this solution is not acceptable because this is
not a published API and is not guaranteed not to change in future versions.Understood. We all benefit from sticking to the J2EE standards,
but we could also wish Oracle had done so with it's driver objects.
I will assume your code is running in the WebLogic server, because
an external JVM can never access the real driver object, which will
always really be in the WLS JVM. No active JDBC object is serializable.
How can I reliably obtain a vendor-specific implementation of java.sql.Struct
through a WebLogic connection pool in WebLogic Server 10?There is no way to get a handle on an unwrapped pool object without using some
WLS-specific code, though I can describe a way with documented methods,
and/or I can get our documentation altered to say we'll support the
getVendorObj() method. We introspect every vendor object, and for those
implementations that have done the wise thing, projecting any non-standard
methods as an Interface, we are able to also project that Interface so
the vndor example code should work. However, in some poorly-done
cases, such as for some Oracle stuff, there is either no Interface,
or the Oracle code has extensions that take java.sql objects as input,
(at least that's the signature of the method) but two lines into the
method, the Oracle code assumes and casts the java.sql object to a concrete
Oracle object. In these use cases you need the direct unwrapped object.
We provide and document Connection.getVendorConnection(), and intend
getVendorObj() to serve the same for subobjects, but note the dangers
and responsibilities: We rely on our wrappers to implement the security
and thread-safety of our pooling system. Because user code can get
unrestricted access to the actual connection from most JDBC objects,
we can never trust that we have complete control once a vendor object
is exposed. Therefore, by default we will close and replace every JDBC
connection so exposed, as soon as the current thread is finished with
the pool connection. This hurts performance. We also document a pool
config setting that will tell us that you take responsibility for any such
problems, and not to close connections just because they've been exposed.
HTH,
Joe
Thanks for any advice,
-Dan Schwemlein -
JDBC Connections not being returned to pool
Greetings All.
I really need some help here to find out where my connections are being held.
I have a transactional connection pool that runs out of connections on average three times a day. I've read all the threads in the newsgroups for connection leaks and how to always release connections in the finally block.
1.
I can confirm that it's definitely not a connection leak, I confirmed this by using the jar for tracing connection leaks and none was displayed.
2.
I've looked at all our code and all code that uses jdbc connections destroys jdbc resources in the finally clause.
3.
I'm new to the department and therefore cannot tell you what new code was put in that caused this problem to occur.
4.
We're using WL 8.1.3 AND JDK 1.4.2_06
5.
I've tried JMX to view what the connections are doing when this problem occurs, and hence enabled statement cache which revealed nothing of interest to me. I just wish somehow I could get to trace which threads reserved the connections and do a stack trace on them.
The most frequent error in my jdbc logs is :
java.sql.SQLException: ORA-01401: inserted value too large for column
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289)
at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:573)
at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1891)
at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:1093)
at oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:2047)
at oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:1940)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2709)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:589)
at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:656)
at weblogic.jdbc.wrapper.PreparedStatement.execute(PreparedStatement.java:70)
at net.cellc.sal.ejb.saldataaccess.TransactionDAO.updateRecordStatus(TransactionDAO.java:76)
at net.cellc.sol.ejb.sol.SOLBean.updateRecord(SOLBean.java:312)
at net.cellc.sol.ejb.sol.SOLBean.processMessage(SOLBean.java:170)
at net.cellc.sol.ejb.sol.SOL_ytyu34_EOImpl.processMessage(SOL_ytyu34_EOImpl.java:46)
at net.cellc.sal.ejb.sal.SALBean.callSOL(SALBean.java:339)
at net.cellc.sal.ejb.sal.SALBean.process(SALBean.java:201)
at net.cellc.sal.ejb.sal.SAL_ki83rk_EOImpl.process(SAL_ki83rk_EOImpl.java:100)
at net.cellc.sal.ejb.sal.SAL_ki83rk_EOImpl_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:477)
at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:108)
at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:420)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:144)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:415)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:30)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
SQLException: SQLState(23000) vendor code(1401)
Your help would be really appreciated.
Regards
Ze CasperianHi. Show us your pool definition. You should turn off refresh test minutes.
Set it to 9999999.
Joe
Mncedisi Kasper wrote:
Greetings All.
I really need some help here to find out where my connections are being held.
I have a transactional connection pool that runs out of connections on average three times a day. I've read all the threads in the newsgroups for connection leaks and how to always release connections in the finally block.
1.
I can confirm that it's definitely not a connection leak, I confirmed this by using the jar for tracing connection leaks and none was displayed.
2.
I've looked at all our code and all code that uses jdbc connections destroys jdbc resources in the finally clause.
3.
I'm new to the department and therefore cannot tell you what new code was put in that caused this problem to occur.
4.
We're using WL 8.1.3 AND JDK 1.4.2_06
5.
I've tried JMX to view what the connections are doing when this problem occurs, and hence enabled statement cache which revealed nothing of interest to me. I just wish somehow I could get to trace which threads reserved the connections and do a stack trace on them.
The most frequent error in my jdbc logs is :
java.sql.SQLException: ORA-01401: inserted value too large for column
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289)
at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:573)
at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1891)
at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:1093)
at oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:2047)
at oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:1940)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2709)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:589)
at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:656)
at weblogic.jdbc.wrapper.PreparedStatement.execute(PreparedStatement.java:70)
at net.cellc.sal.ejb.saldataaccess.TransactionDAO.updateRecordStatus(TransactionDAO.java:76)
at net.cellc.sol.ejb.sol.SOLBean.updateRecord(SOLBean.java:312)
at net.cellc.sol.ejb.sol.SOLBean.processMessage(SOLBean.java:170)
at net.cellc.sol.ejb.sol.SOL_ytyu34_EOImpl.processMessage(SOL_ytyu34_EOImpl.java:46)
at net.cellc.sal.ejb.sal.SALBean.callSOL(SALBean.java:339)
at net.cellc.sal.ejb.sal.SALBean.process(SALBean.java:201)
at net.cellc.sal.ejb.sal.SAL_ki83rk_EOImpl.process(SAL_ki83rk_EOImpl.java:100)
at net.cellc.sal.ejb.sal.SAL_ki83rk_EOImpl_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:477)
at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:108)
at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:420)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:144)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:415)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:30)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
SQLException: SQLState(23000) vendor code(1401)
Your help would be really appreciated.
Regards
Ze Casperian -
Lightweight command to test JDBC connections on a pool
Hi,
today to test a pool of JDBC connections i use this command:
SELECT NOW() FROM DBA.DUAL
i'm using a lightweight command? or exists some other that can cost less to database?
thanks for any tip
Clóvis>
SELECT NOW() FROM DBA.DUAL
Hi Clovis,
the command is pretty lightweight.
No IO is needed for that.
If you want to save even more CPU cycles, you may try switching to
SELECT user FROM DBA.DUAL
This should be a little tick quicker as it does not need to make a system call to get the current time.
Anyhow, the difference should be negligible.
regards,
Lars -
HELP:Problem in creating a temporary CLOB using JDBC connection pooling
Hi All,
i am inserting a large xml document in an xml type column by creating a temporary clob of this document
tempClob = CLOB.createTemporary(conn, true, CLOB.DURATION_SESSION);
I am not having any success getting the following statement working using a JDBC connection pool rather than a hard coded URL connection
it works with:
"jdbc:oracle:thin:@server:port:dbname" connection
Does NOT work with:
datasource.getConnection()
Does any one know how to successfully get this to work?
urgently plz........Hi Dharmi
Here is a quote of Dafna's post in [another thread in this forum|Re: Copy VC controls]
CE7.1.1 will be released at September 2008 for ramp-up customers.
There are many improvements and new capabilities in the new release of Visual Composer for CE7.1.1. Among the new features you can find:
The missing features from Visual Composer 7.0 (Html view, portal Eventing support (EPCM), JDBC, Undo/Redo, and more..)
Many layout & modeling improvements
Additional ALV table functionality - export to Excel, switch to chart, configure ALV behavior at design time
Integration of Visual Composer in Eclipse - additional entry point to the Visual Composer models from the NWDS. This integration provides the option to add a WD component (in case of missing functionality in Visual Composer), as a black box component to the Visual Composer model. Right-clicking the component will open the Web Dynpro perspective for creating/modifying the component.
Regards,
Shai -
Issue JDBC connection pool with Glassfish 3.1.2.2 and Oracle XE 11gR2
Hello,
I am experiencing an issue with pinging a JDBC connection Pool.
I installed the following without any warnings or errors:
Operating System: Oracle Enterprise Linux 5
Oracle XE 11gR2 (11.2.0.2.0) database
Glassfish 3.1.2.2
I will refer to the steps I did after the installations
1) In the .profile file of the OS I add the following:
JRE_HOME=/usr/java/jre1.6.0_31; export JRE_HOME
JAVA_HOME=/usr/java/jdk1.6.0_31; export JAVA_HOME
GLASSFISH_DIR=/u01/glassfish3
GLASSFISH_HOME=/u01/glassfish3/glassfish
DERBY_HOME=$GLASSFISH_DIR/javadb
OPEN_MQ_HOME=$GLASSFISH_DIR/mq
PATH=:$JAVA_HOME/bin:$JRE_HOME/bin:$PATH:$HOME/bin:$GLASSFISH_HOME/bin:$DERBY_HOME/bin:$OPEN_MQ_HOME/bin
export GLASSFISH_HOME
export DERBY_HOME
export OPEN_MQ_HOME
export PATH
LD_LIBRARY_PATH=/u01/app/oracle/product/11.2.0/xe/lib; export LD_LIBRARY_PATH
. /u01/app/oracle/product/11.2.0/xe/bin/oracle_env.sh
2) I copied the ojdbc6.jar to the $GLASSFISH_HOME/domains/domain1/lib
3) I login to the Glassfish admin console and created a new JDBC Connection Pool.
Pool Name: ds_orasys
Resource Type: javax.sql.DataSource
Datasource Classname: oracle.jdbc.pool.OracleDataSource
User: [myschema]
Password: [myschema password]
URL: jdbc:oracle:thin:@localhost:1521:xe
When I ping the connection pool I get the following message in the server log:
[#|2012-10-23T12:14:37.069+0300|WARNING|glassfish3.1.2|javax.enterprise.resource.resourceadapter.com.sun.enterprise.connectors.service|_ThreadID=22;_ThreadName=Thread-2;|RAR8054: Exception while creating an unpooled [test] connection for pool [ ds_orasys ], Connection could not be allocated because: Invalid Oracle URL specified|#]
[#|2012-10-23T12:14:37.071+0300|SEVERE|glassfish3.1.2|org.glassfish.admingui|_ThreadID=19;_ThreadName=Thread-2;|RestResponse.getResponse() gives FAILURE. endpoint = 'http://212.205.62.217:4848/management/domain/resources/ping-connection-pool.json'; attrs = '{id=ds_orasys}'|#]
I tried to use different jar files. I used ojdbc6dms.jar and ojdbc14.jar.
I also copied the jar files in the $GLASSFISH_HOME/domains/domain1/lib/ext directory as some people suggested. Still no luck. I keep getting the same error messages in the server.log
Can anybody help me out or point me to the right direction.
Thank you in advanceThe error is in the URL. It was in front of my eyes and I couldn't see the error. I skipped the ':' before the '@' when I created the pool. It is working fine now.
-
JDBC Connection pool recovery after DB server restart
I am finding that Kodo is throwing the following exception after I restart
my database server (mysql). I am doing the database server restart while my
application server is idle, so it is not during a transaction.
Communication link failure: java.net.SocketException [code=0;state=08S01]
NestedThrowables:
com.solarmetric.kodo.impl.jdbc.sql.SQLExceptionWrapper:
This is presumably due to the JDBC connection pooling. Is there a
configuration setting that allows Kodo to detect such failures and reconnect
to the database server without exposing this problem to the application
code? For example, WebLogic Server's JDBC connection pool has a setting that
enables testing a connection and recovering from such failures before
allocating it from the pool.
BenThis is presumably due to the JDBC connection pooling. Is there a
configuration setting that allows Kodo to detect such failures and reconnect
to the database server without exposing this problem to the application
code?Not right now. You can log an enhancement request with our bug database:
http://bugzilla.solarmetric.com/ -
JDBC connection pool failures when used by JMS stores
We are using WebLogic 6.1 sp2. We defined a separate connection pool for use by
a JMS Store.
<JDBCConnectionPool Name="sybaseJMSPool"
Targets="cluster00"
InitialCapacity="2"
MaxCapacity="10"
DriverName="com.sybase.jdbc2.jdbc.SybDriver"
Properties="[email protected]@;[email protected]@;charset=utf8"
URL="jdbc:sybase:Tds:@jms.db.host@/@jms.db.name@"/>
(note that the @xxx@ string are replaced by actual values).
We are using Sybase Jconnect 5.5 to a Sybase ASE 12.5 database.
We deployed this configuration on a number of environments (testing, staging,
..). The actual hardware and network configuration is different for the different
system, but the WebLogic domain stays the same regarding this issue.
On the test system we frequently get the following exceptions:
<Aug 13, 2002 1:56:04 PM CEST> <Alert> <JMS> <www00-test> <node00>
<ExecuteThread: '6' for queue: 'JMS.TimerClientPool'> <> <> <040048>
<JMSServer "JMSServer00", store failure while writing message for topic
OrderChangeTopic, java.io.IOException: JMS JDBC store, connection pool =
<sybaseJMSPool>, prefix = <JMS00>: write failed
java.sql.SQLException: JZ006: Caught IOException:
com.sybase.jdbc2.jdbc.SybConnectionDeadException: JZ0C0: Connection is already
closed.
at com.sybase.jdbc2.jdbc.ErrorMessage.raiseErrorCheckDead
(ErrorMessage.java:715)
at com.sybase.jdbc2.tds.Tds.handleIOE(Tds.java:3124)
at com.sybase.jdbc2.tds.Tds.cancel(Tds.java:1412)
at com.sybase.jdbc2.tds.Tds.cancel(Tds.java:1341)
at com.sybase.jdbc2.jdbc.SybStatement.doCancel(SybStatement.java:564)
at com.sybase.jdbc2.jdbc.SybStatement.updateLoop(SybStatement.java:1672)
at com.sybase.jdbc2.jdbc.SybStatement.executeUpdate
(SybStatement.java:1625)
at com.sybase.jdbc2.jdbc.SybPreparedStatement.executeUpdate
(SybPreparedStatement.java:91)
at com.p6spy.engine.logging.P6LogPreparedStatement.executeUpdate
(P6LogPreparedStatement.java:179)
at weblogic.jdbc.pool.Statement.executeUpdate(Statement.java:293)
at weblogic.jms.store.JDBCIOStream.write(JDBCIOStream.java:1246)
at weblogic.jms.store.StoreRequest.doTheIO(StoreRequest.java:250)
at weblogic.jms.store.JMSStore.execute(JMSStore.java:182)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
.>
java.io.IOException: JMS JDBC store, connection pool = <sybaseJMSPool>, prefix
= <JMS00>: write failed
java.sql.SQLException: JZ006: Caught IOException:
com.sybase.jdbc2.jdbc.SybConnectionDeadException: JZ0C0: Connection is already
closed.
at com.sybase.jdbc2.jdbc.ErrorMessage.raiseErrorCheckDead
(ErrorMessage.java:715)
at com.sybase.jdbc2.tds.Tds.handleIOE(Tds.java:3124)
at com.sybase.jdbc2.tds.Tds.cancel(Tds.java:1412)
at com.sybase.jdbc2.tds.Tds.cancel(Tds.java:1341)
at com.sybase.jdbc2.jdbc.SybStatement.doCancel(SybStatement.java:564)
at com.sybase.jdbc2.jdbc.SybStatement.updateLoop(SybStatement.java:1672)
at com.sybase.jdbc2.jdbc.SybStatement.executeUpdate
(SybStatement.java:1625)
at com.sybase.jdbc2.jdbc.SybPreparedStatement.executeUpdate
(SybPreparedStatement.java:91)
at com.p6spy.engine.logging.P6LogPreparedStatement.executeUpdate
(P6LogPreparedStatement.java:179)
at weblogic.jdbc.pool.Statement.executeUpdate(Statement.java:293)
at weblogic.jms.store.JDBCIOStream.write(JDBCIOStream.java:1246)
at weblogic.jms.store.StoreRequest.doTheIO(StoreRequest.java:250)
at weblogic.jms.store.JMSStore.execute(JMSStore.java:182)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
at weblogic.jms.store.JDBCIOStream.throwIOException
(JDBCIOStream.java:1213)
at weblogic.jms.store.JDBCIOStream.write(JDBCIOStream.java:1256)
at weblogic.jms.store.StoreRequest.doTheIO(StoreRequest.java:250)
at weblogic.jms.store.JMSStore.execute(JMSStore.java:182)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
Before that this message appeared:
<Aug 13, 2002 11:31:16 AM CEST> <Error> <ConnectionManager> <www00-test>
<node00> <ExecuteThread: '26' for queue: 'default'> <> <> <000000>
<Closing: 'weblogic.rjvm.t3.T3JVMConnection@795af6' because of: 'Server
received a message over an uninitialized connection: 'JVMMessage from: 'null'
to: '-4555218188801970213S:192.168.13.1:[7001,7001,7002,7002,7001,7002,-
1]:ADIS:node00' cmd: 'CMD_REQUEST', QOS: '101', responseId: '1',
invokableId: '287', flags: 'JVMIDs Not Sent, TX Context Not Sent', abbrev
offset: '34'''>
This problem did not occur on another system which was used during a 2 day stress
testing session.
It seems that the problem occurs after a period in which no user request where
made. The user requests trigger EJB's that start sending JMS messages.
When the problem occurs, the JMS messaging systems seems to lock up as no messages
are received anymore by the different listeners (MDBs).
Undeploying and redeploying the JBDC connection pool solves the problem. This
solution is unacceptable in case of a production system.
A similarly defined connection pool, which is used by the EJBs to make database
connection, does not manifest this problem.
<JDBCConnectionPool Name="sybasePool"
Targets="cluster00"
InitialCapacity="10"
CapacityIncrement="5"
MaxCapacity="50"
PreparedStatementCacheSize="150"
DriverName="com.sybase.jdbc2.jdbc.SybDriver"
Properties="[email protected]@;[email protected]@;JCONNECT_VERSION=6;charset=utf8"
URL="jdbc:sybase:Tds:@db.host@/@db.name@"/>
The JDBC connection pool is used as follows by the JDBC store
<JMSJDBCStore ConnectionPool="sybaseJMSPool" Name="JDBCStore00" PrefixName="JMS00"/>
<JMSServer Name="JMSServer00" Store="JDBCStore00" Targets="node00">
<JMSTopic JNDIName="ADIS.JMSError" JNDINameReplicated="false" Name="ErrorTopic"/>
<JMSTopic JNDIName="ADIS.Status"
Name="StatusTopic" RedeliveryDelayOverride="300000"/>
<JMSTopic JNDIName="ADIS.OrderChange" JNDINameReplicated="false"
Name="OrderChangeTopic" RedeliveryLimit="3"/>
</JMSServer>
Turning on the "Test Reserved Connection" with a appropriate test table does not
help.
Some sources on the internet tell us that JZ0C0 errors in the Jconnect driver
can be related to network problems. Nevertheless the connection pool should be
able to cope with this.
Can you provide any solution for this ? Or give us hints what can cause the problem
Zhenhao Qi wrote:
thanks! Joe.
The SQL statement itself can no longer be simplified, the long excuation time is due to the database size and complicated Select criteria. I can easily reproduce the problem by using this SQL. I tried "BEA's Oracle driver (Type 4): Version 8.1.7,9.0.1,9.2.0". the question can be dissect into 2 pieces:
1) why the jdbc connection (using oracle.jdbc.OracleDriver) won't return anything if the SQL execution time > 5min, that is probably the Oracle's problem
2) why the occupied connection pool won't release even I set "Statementtimeout=600", this is Weblogic's problem.
ZhenhaoHi. Yes, (1) is oracle's problem. (2) may also be. The JDBC spec has very few
allowances for one thread to interrupt a second thread's JDBC call. If we
transmit your timeout request by calling setQueryTimeout() on the oracle
statement, and if you have a weblogic-controlled transaction we call
Statement.cancel() on any ongoing statement, we end up relying on whether
the Oracle driver implements and responds to those calls.
Are you doing weblogic-controlled transactions? Are you/can you
call Statement.setQueryTimeout() on your statements, or are these
generated JDBC queries?
If you can duplicate the problem using the weblogic.jdbc.oracle.OracleDriver
we have some other debug avenues. This would be good even if you really
want to use the thin driver, because we will do the same JDBC calls to
either driver, and the debug would prove (if) we set up a query timeout
and if we call cancel(). If we do, then we can know that it is the Oracle
driver failing in these regards.
Joe -
JDBC Connection pools and clusters (is max connection for entire cluster?)
Hi,
Quick question.
When using JDBC connection pools in WAS 6.40 (SP13) in a clustered environment. Are the max connections the number
a)Each application server can use
b)The entire cluster can use
Would believe a), but I'd like it confirmed from someoneelseHi Dagfinn,
your assumption is correct. Therefore, in a cluster environment you'd need to make sure the DB can open <i>Number of nodes X max connections</i>.
Maybe you are looking for
-
Tried to restore, Time Machine isn't setup because I don't have a backup disk big enough. I never thought I would say this: I WANT MY BLACKBERRY BACK!!!! I never had issues with the calendar on my crappy Blackberry Storm. What the crap, Apple?!?!
-
How can I import an iTunes folder from another Mac?
I realize now I could've used the Migration Assistant and it would've been a lot easier. However, all I currently have is the copied "iTunes" folder from the "Music" folder of the other Mac. Is there any way that I can import this into my current Mus
-
How to use java script in jsf?
my requirement is i have to pass the id of the component to the java script function .that component is inside data table. how to solve this problem?
-
Null Pointer Exception when using exec() method of runtime.
Hi There, I am using a Random Access File to access text data. Then I am using the text data with the Runtime class to activate native programs (such as Word, Outlook, etc). I have designed my code so that the length of the text file is compared to t
-
I needed to adjust some of the mail settings in Server 10.5.8 because I had a client that was unable to access mail. In server Admin I selected mail and then clicked "Stop Mail." After the screen refresh, the "Stop Mail" button reappeared rather th