Monitoring of topLink internal connections  pool

we wish to monitoring use of Toplink internal connections pool : numbers maximum used, a minimum number used.
we know to do it with the external pool (OracleAS) but not with the internal pool.
Regards

The only way to get this information is through API calls. If you have a Server (oracle.toplink.threetier) you can ask the read and default (write) connection pools.
        // Display Read Connection pool info       
        System.out.println("READ Available: " +
                           server.getReadConnectionPool().getConnectionsAvailable().size());
        System.out.println("READ Minimum: " +
                           server.getReadConnectionPool().getMinNumberOfConnections());
        System.out.println("READ Maximum: " +
                           server.getReadConnectionPool().getMaxNumberOfConnections());
        // Display Write Connection pool info       
        System.out.println("WRITE Available: " +
                           server.getDefaultConnectionPool().getConnectionsAvailable().size());
        System.out.println("WRITE Minimum: " +
                           server.getDefaultConnectionPool().getMinNumberOfConnections());
        System.out.println("WRITE Maximum: " +
                           server.getDefaultConnectionPool().getMaxNumberOfConnections());Doug

Similar Messages

  • Toplink Mysql Connection pool issues

    I am frequently seeing threads in wait state on toplink connection pool, I have given the stack trace below, anyone has any ideas as to what is happening? is it
    related to connection timeout? or other causes...
    "http-0.0.0.0-8080-2" id=397 idx=0x620 tid=5344 prio=5 alive, in native, waiting
    , daemon
    -- Waiting for notification on: oracle/toplink/threetier/ConnectionPool@0x00
    F181D8[fat lock]
    at jrockit/vm/Threads.waitForNotifySignal(JLjava/lang/Object;)Z(Native Metho
    d)
    at java/lang/Object.wait(J)V(Native Method)[optimized]
    at java/lang/Object.wait(Object.java:474)
    at oracle/toplink/threetier/ConnectionPool.acquireConnection(ConnectionPool.
    java:65)
    ^-- Lock released while waiting: oracle/toplink/threetier/ConnectionPool@0x0
    0F181D8[fat lock]
    at oracle/toplink/threetier/ServerSession.allocateReadConnection(ServerSessi
    on.java:412)
    at oracle/toplink/threetier/ServerSession.executeCall(ServerSession.java:443
    at oracle/toplink/internal/queryframework/DatasourceCallQueryMechanism.execu
    teCall(DatasourceCallQueryMechanism.java:193)
    at oracle/toplink/internal/queryframework/DatasourceCallQueryMechanism.execu
    teCall(DatasourceCallQueryMechanism.java:179)
    at oracle/toplink/internal/queryframework/DatasourceCallQueryMechanism.execu
    teSelectCall(DatasourceCallQueryMechanism.java:250)
    at oracle/toplink/internal/queryframework/DatasourceCallQueryMechanism.selec
    tAllRows(DatasourceCallQueryMechanism.java:583)
    at oracle/toplink/internal/queryframework/ExpressionQueryMechanism.selectAll
    RowsFromTable(ExpressionQueryMechanism.java:2483)
    at oracle/toplink/internal/queryframework/ExpressionQueryMechanism.selectAll
    Rows(ExpressionQueryMechanism.java:2441)
    at oracle/toplink/queryframework/ReadAllQuery.executeObjectLevelReadQuery(Re
    adAllQuery.java:467)
    at oracle/toplink/queryframework/ObjectLevelReadQuery.executeDatabaseQuery(O
    bjectLevelReadQuery.java:874)
    at oracle/toplink/queryframework/DatabaseQuery.execute(DatabaseQuery.java:67
    4)
    at oracle/toplink/queryframework/ObjectLevelReadQuery.execute(ObjectLevelRea
    dQuery.java:835)
    at oracle/toplink/queryframework/ReadAllQuery.execute(ReadAllQuery.java:445)
    at oracle/toplink/internal/sessions/AbstractSession.internalExecuteQuery(Abs
    tractSession.java:2260)
    at oracle/toplink/internal/sessions/AbstractSession.executeQuery(AbstractSes
    sion.java:1074)
    at oracle/toplink/internal/sessions/AbstractSession.executeQuery(AbstractSes
    sion.java:1058)
    at oracle/toplink/internal/sessions/AbstractSession.executeQuery(AbstractSes
    sion.java:1017)
    at com/integral/query/QueryServiceC.executeQuery(QueryServiceC.java:1030)
    at com/integral/query/QueryServiceC._find(QueryServiceC.java:525)
    at com/integral/query/QueryServiceC._findAll(QueryServiceC.java:123)
    at com/integral/query/QueryServiceC.findAll(QueryServiceC.java:83)
    at com/integral/query/ejb/QueryServiceC.findAll(QueryServiceC.java:59)

    Hello,
    It looks like you are using a TopLink managed connection pool and do not have enough connections available for the number of threads needing to use one. This results in threads having to wait until one is released from another thread. In the thread shown, it is waiting to get a read connection from the read pool.
    TopLink connection pools are described in the docs at:
    http://www.oracle.com/technology/products/ias/toplink/doc/1013/main/_html/srvclius002.htm#CHDJAECD
    I'd recommend increasing the min/max number of connections to something that is appropriate to handle your peak load based on your applications usage paterns.
    Best Regards,
    Chris

  • How To:  Monitor usage of a connection pool

    So I have a bunch of EJBs using a DB connection pool hosted under iAS
    6sp2 on Solaris. How do I monitor pool usage? I would like to see
    available pooled connections and in use connections - that would refresh
    periodically.
    The iAST tool has the monitor thing, which I turned on and added some
    plots (active connection, and something else)...but those plots flat
    lined and never showed any activity nor usefull information.
    Can you hook up SNMP to an iAS? What about JMX? What are other
    suggestions?
    Thanks in advance,
    Fred Welland
    [email protected]
    Intelix Inc.

    You can enable debug ( level = 1 ) at the pool level. This would throw some additonal information into kjs log. Unfortunately there is no time stamp with these lines. But you will get an ides of how your pool is performing during the test.

  • SQLJ connection pool. How to implement/etc?

    Hi,
    Im currently using DefaultContext ctx = DefaultContext.getDefaultContext( ); I get one connection per session. But i would like to implement connection pooling. Can oracle handle this already. I have tried oracle.jdbc.pool and it doesnt seem to work. Do I have to write my own class for this? I have been researching for the last week and so many articles on how to do it, but no examples for sqlj.
    Thanks

    Thankyou for the feedback.
    (I was reading sections 86 to 104 in the Developers Guide for Oracle Toplink to find out about internal connection pools)
    postAcquireConnection
    PUBLIC: This event is raised on when using the server/client sessions. This event is raised after a connection is acquired from a connection pool.
    My understanding of this event is that it will execute every time some java code needs to obtain a connection from the pool to do a query on the database. Is there someway I can just apply the session settings on each database connection once, when the connection is created, rather than every time a connection is retrieved from the pool by a java thread. The overhead on the database will be very large, if every time a java thread performs a single database query and obtains a connection from the pool it has to execute my "alter session" command and then perform its, query before returning the connection back to the pool so that other java threads can use it.
    Thanks

  • How does Toplink know which Pool to use ?

    We have two pools defined in sessions.xml as below
    default has is-read-connection-pool false and one with true. We are not specifying to use read pool or default pool in our app anywhere, which we can while acquireClientSession("pool name"), but we are not. Does TL automatically decide to use which pool to use ?
              <connection-pool>
                   <is-read-connection-pool>false</is-read-connection-pool>
                   <name>default</name>
                   <max-connections>10</max-connections>
                   <min-connections>10</min-connections>
              </connection-pool>
              <connection-pool>
                   <is-read-connection-pool>true</is-read-connection-pool>
                   <name>Read Pool</name>
                   <max-connections>15</max-connections>
                   <min-connections>15</min-connections>
              </connection-pool>

    When using TopLink's internal connection pooling:
    READING: session.acquireClientSession() will acquire a read connection for the client session from the default read connection pool. Having multiple read connection pools and providing the pool name in the acquire is very uncommon.
    WRITING: When a UnitOfWork requires a connection for writing it will acquire a connection from the write connection pool.
    Doug

  • How to use Connection pool in Reports

    Dear All,
    Please help me How to create Connection pool for Reports and How to use in Reports.
    Present i am using the report by passing parameter as P_JDBCPDS=username/password@databaseName. I thought this will not manage the coonection pool.
    For all reports and every time i am passing userName/password, how to avoid this. Please help me.
    1. How to create Connection pool for Report Server
    2. How to use that Connection pool in the Reports.
    Please help me.
    With Regards,
    Srinivas.

    Until now, I have not worked unfortunately with a connection pool, but, I have found a documentation about the Creating an Internal Connection Pool.
    http://download-east.oracle.com/docs/cd/B25221_04/web.1013/b13593/cpdef.htm

  • Connection pooling problem in TopLink with JBoss4.0.3

    Hi All
    I am using JBoss4.0.3SP1 with TopLink-10g(9.0.4.5) and Sybase as database. I am implementing connection pooling of JBoss with Sybase. I have done all the changes in JBoss mapping files.
    Now to enable connection pooling in TopLink I have set the <uses-external-connection-pooling> attribute in sessions.xml file to true and I have added <datasource> attribute corresponding to the datasource defined in JBoss. It is working fine but when I delete the username, password...etc attribute from the sessions.xml then I am not able to get the session from datasource.
    Can anyone tell me what to do or where I am making mistake? Any help on this will be appreciated

    I tried that code also but the project object that I am getting is null which is in this line
    DatabaseLogin login = (DatabaseLogin)mySession.getProject().getLogin();
    mySession is an object of oracle.toplink.sessions.Session interface but when I call this method then it returns me a null object of Project class, so I am getting NullPointerException error. I tried to do this stuff by many ways but I am always getting the NullPointereException in setLogin() method of Session. This is the stackTrace of the error.....
    java.lang.NullPointerException
    at oracle.toplink.publicinterface.Session.setLogin(Session.java:2871)
    at com.test.TestCon.executeQurey(TestCon.java:91)
    at org.apache.jsp.Test_jsp._jspService(org.apache.jsp.Test_jsp:55)
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
    at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
    at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39)
    at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:159)
    at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
    at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
    at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
    at java.lang.Thread.run(Unknown Source)
    Can you please tell me where I am wrong or any other way to do fix this problem.

  • How to monitor connection pools using wlsd

    Hi
    i need to monitor connectionpools , i dont know that much about wlsd, how can we configure wlsd to monitor connection pools.
    Cheers
    Raghu

    U can use a Simple Java Code for that: http://jaysensharma.wordpress.com/2010/02/19/jdbcconnectionpool-parameters-using-jmx/
    In the above program you need to just change the following 4-lines:
    int port = 7001; // AdminServer Port
    String hostname = “localhost”; // AdminSewrver HostName
    h.put(Context.SECURITY_PRINCIPAL, “weblogic”); // AdminUserName
    h.put(Context.SECURITY_CREDENTIALS, “weblogic”); // Admin Paassword...
    ====================================
    Using WLST if you want to do it then you need to edit the following Script a Bit : http://jaysensharma.wordpress.com/2010/03/23/testing-datasource-status-using-wlst/

  • Monitoring Connection Pools

    Hello All,
    Environment details: OBIEE - 10.1.3.4.1 on 10gAS , Solaris 10. Single Node
    We are implementing OBIEE in our organization and every quarter we add more number of data sources, dashboards and users. Recently we have started observing slowness while logging in. After crosschecking we have observed that not having separate connection pools for session variables might be one of the issue.
    Before defining any new connection pools, we would like to take a proper step to design our connection pools. But we are unable to locate proper resources for monitoring the connection pool usage at a give point of time. Ideally we would to automate a job which will collect statistics of all available connection pools, users at a decent level of detail. This can help us in identifying the pattern of usage and further help us in defining an optimal connection pool strategy.
    Could someone please guide me to a proper resource ? Can UDML help me here ? Any tips?
    Thanks a lot for your help.
    ~Ravi.M

    As far as I know there isn't any way of checking the connection pool usage from the OBIEE layer. But your DBA should able to queries to monitor the OBIEE connection usage from the database side. As for your question about designing connections pools the documentation is very extensive on this subject, have you reviewed the relevant section in the server Administration Guide?
    After crosschecking we have observed that not having separate connection pools for session variables might be one of the issue.This is specifically mentioned in the documentation, you should separate connections for your Init Blocks. Also you should try to consolidate Init Blocks to reduce the database call overhead. In addition to this I can mention that most login problems relate to Init Blocks taking long to run rather than connection pool issues. Make sure your Init Blocks return data quickly. Also if you have a lot of session init blocks you may want to set some depencies between them. Suppose you have 10 session init blocks. If two users login at the same time OBIEE will try to run all those queries at the same time, should the max connections be set that high (20). By setting some execution depencies in your Init Blocks you can control the execution to reduce the parallelism and make them to run a bit more serial reducing the connection pool usage.

  • Welogic 9.2 jdbc connection pool monitoring section not displaying server

    Welogic 9.2 managed jdbc connection pool monitoring section not displaying server name. Can you please let me know how can i achive this

    Hi,
    It happens if the Connectivity is Lost b/w DataBase & WLS Server...In that case in the WLS AdminConsole---DataSource---Monitoring Tab you wont see even the Testing Page with valid datasource to test it.
    So please make sure that the N/W connectivity proper....One more thing you can try:
    <h3><font color=red>Test-1</font></h3>
    You can use *“weblogic.Admin”* utility to Enable and Disable the Pool (DataSource) Just to Confirm whether the dataSource is actually active or not::
    Step1). run *"setWLSEnv.sh"* first in the same Shell prompt....then do the following:
    Step2). To suspend:
    java weblogic.Admin -url t3://localhost:7001 -username weblogic -password weblogic SUSPEND_POOL YourDataSourceName
    Step3). To re-enable:
    java weblogic.Admin -url t3://localhost:7001 -username weblogic -password weblogic RESUME_POOL YourDataSourceName
    To test whether you are getting any Exception or Error while doing this....If yes u are getting any Error or exception then It means there May be some Database connectivity issue...
    <h3><font color=red>Test-2</font></h3>
    Please use the following Utility to Test the Database connectivity from your WLS Server box:
    <font color=maroon>
    java -classpath /opt/app/bea/weblogic92mp2/weblogic92/server/lib/weblogic.jar -Dbea.home=/opt/app/bea/weblogic92mp2   utils.dbping ORACLE_THIN DbUserName DBPassword somethingDbUrl.Something.net:1521:dbInstance
    </font>
    Syntax:
    java   -classpath /opt/app/bea/weblogic92mp2/weblogic92/server/lib/weblogic.jar   -Dbea.home=/opt/app/bea/weblogic92mp2   utils.dbping   ORACLE_THIN   <DBUserName>   <DBPassword>   <DBURL>
    The above utilty will test the DB Connectivity ...you need to run it from your WLS server Box...
    <h3><font color=red>Another Simple Alternative of Test-2</font></h3>
    http://jaysensharma.wordpress.com/2010/03/23/testing-datasource-status-using-wlst/
    Thanks
    Jay SenSharma
    http://jaysensharma.wordpress.com (WebLogic Wonders Are Here)

  • Monitoring EJB,Connection Pool,Servlets

    Hi,
    i have one doubt does oracle provides any MBeans to monitor ejb,connection pools etc..?
    thanks &regards
    Magesh.N

    Hi,
    i have one doubt does oracle9ias provides any MBeans to monitor ejb,connection pools etc..?
    thanks .ards
    Magesh.N

  • Web dynpro console - monitor - JCO Connection pools

    If you go to the web dynpro console -> monitor -> JCO connection pools you see a table with information.
    JCo Clients MonitorJCO Pools - 12:31:02.992
      Name Size Currently used Maximum used Max.connections Max.pool size
    Can somebody explain what for example the "Size" and "Maximum used" mean in this table?
    And if you have set max.pool size to 20, what things can override this setting in the SAP system?

    Hi,
    You can follow this link for information on JCO in Web Dynpro Java:
    [http://help.sap.com/SAPHELP_NW04S/helpdata/EN/3a/3b1b40fcdd8f5ce10000000a155106/frameset.htm|http://help.sap.com/SAPHELP_NW04S/helpdata/EN/3a/3b1b40fcdd8f5ce10000000a155106/frameset.htm]
    -Kunal Kotak

  • Monitor Connection pool

    Hi,
    I am using ODP.Net from Oracle 9i client talking against Oracle 9i. Using in VS2005/.Net2.0.
    I am successfully using connection pooling in my applictaion behind web services running in IIS. My front end calls the web service, and the webservice uses the connection from the pool and retrieves data from the database. This works great. I checkd this by looking at the number of open connections in the v$session table.
    I am wondering is there any other way of monitoring the connections/pool on the IIS web server machine. Is there any other app or does ODP.Net have any counters for the connections and the connection pool which we can monitor.
    Thanks
    - Jaideep

    Hi,
    I think I have the answer. I just have to open up active connection pool in the
    administration console and click on Monitoring.
    Please correct me if I am wrong.
    Thanks and best regards,
    Jaya
    "Jaya" <[email protected]> wrote:
    >
    Hi all,
    Is there a way to monitor active connections from Weblogic administration
    console
    (or from anywhere else)?
    I have configured a connection pool with minumum capacity=50, maximum
    capacity=100
    and capacity increment = 1.
    Is there a way to find out how many connections have been used up from
    the pool
    at a given time?
    Thanks in advance.
    Best regards,
    Jaya

  • Monitor Connection Pool 10g

    I am using odp.net 10gR2. Is there a way I can monitor the connection pool, like action connection, connection strings or active connections etc. Also, can I know the like how many connection pools will be there per cpu in my server and can I make any of the connection pool as inactive or disable or something like that ?
    Thanks,

    Hi,
    isn't the theory that there is no direct guaranteed mapping between connections -> sessions -> process ?!
    atleast on 10.2.0.1 x64 on windows 2003 i'm chasing a issue where v$session and v$process counts do not correspond to the number of thread in the oracle.exe process. Seems like as the connection pools increase the threads go up as you would expect but then stay idle until the client app restarts (also a bug with Dead connection detections and keepalives with this release potentially).
    anybody else with this kind of issue or more insight or even better a method to get a bit more insight?
    thanks

  • Connection Pool problems with Weblogic SP4 & Toplink 9.0.4.5

    Hi,
    i have updated my Weblogic 8.1 from SP2 to SP4. Since that I always get the following exception:
    Hi,
    i have updated my Weblogic 8.1 from SP2 to Sp4. Since that I always get the following exception:
    Exception [TOPLINK-4002] (TopLink (WLS CMP) - 10g (9.0.4.5) (Build 040930)): oracle.toplink.exceptions.DatabaseException
    Exception-Beschreibung: java.sql.SQLException: Pool connect failed : javax.security.auth.login.FailedLoginException: [Securit
    y:090304]Authentication Failed: User javax.security.auth.login.LoginException: [Security:090301]Password Not Supplied
    This exception is thrown when the StartUp-Servlet tries the first time to establish an connection to my Connection Pool. The connection pool itself has been tested in the Weblogic-console and works fine.
    Thanks for help.

    Sebastian,
    9.0.4.5 is the version with fixes to address changes made by BEA in SP4 so this should work. I do recall some issue with our login configuration and the data source.
    Is the user-name specified in either your sessions configuration of project XML without a password. This may be an issue where if part of the credentials are supplied it is asking for the rest.
    Doug

Maybe you are looking for

  • How to edit the text of a certain column in SALV_WD_TABLE  in ESS layout

    hi,expert. i want to change the text of the column:appraisee name in ESS worklist.      Application :HAP_START_PAGE_POWL_UI_ESS     Web Dynpro Component: SALV_WD_TABLE     Window Information: TABLE     View Information: VIEW_TABLE how can i achieve i

  • Best practices for Flash forms

    This question was posted in response to the following article: http://help.adobe.com/en_US/ColdFusion/9.0/Developing/WSc3ff6d0ea77859461172e0811cbec10372 -7fed.html

  • EJB ERR: Namingexception caught:javax.naming.NoInitialContextException

    Hi, I am trying to deploy a sample ejb on Jboss and trying to call it from a client. I am getting the following error. *********Before LookUP********* Namingexception caught:javax.naming.NoInitialContextException: Need to specify c lass name in envir

  • Read byte[]

    Hi there, I have an array of bytes already, and I am trying to read it, and it just prints some funny characters. I am using the following code I would really appreciate it if someone can help me. Thanks in advance.. header is the byte array of size

  • Image convert from jpg to BMP (black & white)

    Hi everybody here i am converting a jpg file to 2 bit monochrome image. Though this program is making the bmp monochrome image of passing jpg image. but the program is hanged in between. I don't understand the why it is hanging..though it is generati