Jdbc connection pool ping error in sun  application server

hi,
i have done the appropriate settings for my connection pool
and i have got ping succeded................but it is only for sometimes.
while pinging with the same set of data during another time i have got different errors..........
they are the following:
Operation 'pingConnectionPool' failed in 'resources' Config Mbean. Target exception message: The transaction isolation could not be set: READ_COMMITTED and SERIALIZABLE are the only valid transaction levels
Operation 'pingConnectionPool' failed in 'resources' Config Mbean. Target exception message: Connection could not be allocated because: Io exception: Connection refused(DESCRIPTION=(TMP=)(VSNNUM=150999297)(ERR=12505)(ERROR_STACK=(ERROR=(CODE=12505)(EMFI
=4))))
so i have doubted about my oracle server..........
plz tell me how to start the oracle database server and the oracle net listener............
i would really appreciate anybody for helping me in this problem........

hi,
i have done the appropriate settings for my connection pool
and i have got ping succeded................but it is only for sometimes.
while pinging with the same set of data during another time i have got different errors..........
they are the following:
Operation 'pingConnectionPool' failed in 'resources' Config Mbean. Target exception message: The transaction isolation could not be set: READ_COMMITTED and SERIALIZABLE are the only valid transaction levels
Operation 'pingConnectionPool' failed in 'resources' Config Mbean. Target exception message: Connection could not be allocated because: Io exception: Connection refused(DESCRIPTION=(TMP=)(VSNNUM=150999297)(ERR=12505)(ERROR_STACK=(ERROR=(CODE=12505)(EMFI
=4))))
so i have doubted about my oracle server..........
plz tell me how to start the oracle database server and the oracle net listener............
i would really appreciate anybody for helping me in this problem........

Similar Messages

  • Sun Java Systems Application Server 9 connection-pool ping error

    Hi folks, I tried creating a javax.sql.DataSource MSSQL database connection pool with the jdts type 4 driver I got from sourceforge, and each ping operation I tried gave me the following error message:
    Operation 'pingConnectionPool' failed in 'resources' Config MBean.
    Target exception message: No PasswordCredential found.
    My connection properties are:
    user = sa
    port = 1433
    databaseName = FlyMyWayDB
    serverName = digitanx-chalu
    What does this exception mean, what are the possible causes, and how do I go about resolving it.
    I will really appreciate any help, thanks.

    As long as the JDBC Driver (jar file) for the connection pool(s) you want to create are in the app server's lib directory, you shouldn't have a problem creating both those and the JDBC Resources from the admin console (web app). So far, I am able to bundle my connection pools and resource connections inside my ejb module under "Server Resources" within my enterprise (.ear) application in Netbeans 5.5. When I deploy it, the whole thing works pretty sweet. I haven't gotten to the stage where I will want to migrate the jee application to my dedicated server yet, but I suspect that if my dedicated (remote) app server doesn't want to play nice with my netbeans when I try and set it up as a new server under my "Server Manager", then I'll likely try to simply deploy the .ear file from within the admin console, using the "browse" (for .ear) option (likely the better/preferred practice for production anyhow). Thanks for the dukes! My very first ones ever!

  • FrameworkException/Error in Sun Application Server 8.1

    While undeploying an EJB module, I am getting the following problem. While clicking on the "EJB Modules", the right pane is showing
    A "com.sun.enterprise.tools.guiframework.exception.FrameworkError" was caught. The message from the exception: "Unable to get View for ViewDescriptor 'ejbModules'"
    The root cause is "com.sun.enterprise.admin.common.exception.MBeanConfigException: Component not registered"
    See the HTML source for more detailed (stack trace) information.
    and while clicking on that EJB module from the tree view of the left pane, the right pane is showing
    A "com.sun.enterprise.tools.guiframework.exception.FrameworkException" was caught. The message from the exception: "Unabled to handle pre-compiled JSP '/jsp/ejbModulesEdit.jsp'. Expected pre-compiled classname: 'org.apache.jsp.jsp.ejbModulesEdit_jsp'."
    The root cause is "com.sun.enterprise.admin.common.exception.MBeanConfigException: Component not registered"
    See the HTML source for more detailed (stack trace) information.
    I have restarted the server but nothing happens.

    if you download SJAS 8.2, Derby is included and pre-configured as a DataSource
    Using 8.1, you will need to add the jars to either the lib or domains/domains1/lib/ext directory and manually configure a DataSource using
    javax.sql.DataSource           org.apache.derby.jdbc.ClientDataSource
    javax.sql.XADataSource           org.apache.derby.jdbc.ClientXADataSource

  • How to make a connection pools to oracle 10g in sun application server 8

    env:
    windows xp.
    sun application server 8
    oracle 10g in windows xp .
    I do this
    1: copy the oracle jdbc ojdbc14.jar orai18n.jar file to sun/appserver/lib
    2. add path in admin console
    3. restart the server
    4. make a connnect pools with resource type javax.sql.DataSource
    5.add properties with password,username ,database name= jdbc:oracle:thin:@127.0.0.1:1521:orcl ,(with this url ,my jdbc program can connect oracle10).
    6 .try the ping , it show Operation 'pingConnectionPool' failed in 'resources' Config Mbean. Target exception message: Connection could not be allocated because: 指定了无效的(direct to unusale) Oracle URL: OracleDataSource.makeURL
    please replay to me ,thank very much.

    I change the thin driver to oci driver ,jdbc:oracle:oci:@orcl ,then fix the problem.

  • Creating connection pool on Sun Application Server 8.1

    Hi All,
    I am trying to create a connection pool for my MySql database on Sun Application Server(Version 8.1) using 'asadmin'. I am also able to create the connection pool successfully but when i am trying to ping the connection pool, it is giving me the java.net.UnknownHostException. The command I am using for creating the connection pool is as follows:
    create-jdbc-connection-pool user admin password adminadmin host localhost port 4849 datasourceclassname com.mysql.jdbc.jdbc2.optional.MySqlConnectionPoolDataSource restype javax.sql.XADatasource --property User=root:Password=admin:SelectMethod=Cursor:DatabaseName=testdb:serverName=\"localhost\":portNumber=3306 MyConnectionPool
    My database and the application server are running on the same machine.
    Has anyone come across such a problem? Any help would be highly appriciated.
    Thanks in Advance,
    Anurag.

    hi Anurag,
    Check the properties in the jdbc-connection-pool tag and make sure that the values are populated correctly. You can also try specifying the actual hostname or IP address of the machine instead of localhost and see if that works.
    Cheers,
    Vasanth

  • How to use JDBC Connection Pools in a standalone application?

    Hi, there,
    I have a question about how to use JDBC Connection Pools in an application. I know well about connection pool itself, but I am not quite sure how to keep the pool management object alive all the time to avoid being destroyed by garbage collection.
    for example, at the website: http://www.developer.com/java/other/article.php/626291, there is a simple connection pool implementation. there are three classes:JDBCConnection, the application's gateway to the database; JDBCConnectionImpl, the real class/object to provide connection; and JDBCPool, the management class to manage connection pool composed by JDBCConnectionImpl. JDBCPool is designed by Singleton pattern to make sure only one instance. supposing there is only one client to use connection for many times, I guess it's ok because this client first needs instantiate JDBCPool and JDBCConnectionImpl and then will hold the reference to JDBCPool all the time. but how about many clients want to use this JDBCPool? supposing client1 finishes using JDBCPool and quits, then JDBCPool will be destroyed by garbage collection since there is no reference to it, also all the connections of JDBCConnectionImpl in this pool will be destroyed too. that means the next client needs recreate pool and connections! so my question is that if there is a way to keep pool management instance alive all the time to provide connection to any client at any time. I guess maybe I can set the pool management class as daemon thread to solve this problem, but I am not quite sure. besides, there is some other problems about daemon thread, for example, how to make sure there is only one daemon instance? how to quit it gracefully? because once the whole application quits, the daemon thread also quits by force. in that case, all the connections in the pool won't get chance to close.
    I know there is another solution by JNDI if we develop servlet application. Tomcat provides an easy way to setup JNDI database pooling source that is available to JSP and Servlet. but how about a standalone application? I mean there is no JNDI service provider. it seems a good solution to combine Commons DBCP with JNID or Apache's Naming (http://jakarta.apache.org/commons/dbcp/index.html). but still, I don't know how to keep pool management instance alive all the time. once we create a JNDI enviroment or naming, if it will save in the memory automatically all the time? or we must implement it as a daemon thread?
    any hint will be great apprieciated!
    Sam

    To my knoledge the pool management instance stays alive as long as the pool is alive. What you have to figure out is how to keep a reference to it if you need to later access it.

  • 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 advance

    The 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.

  • Sun Application Server 8.1 remote deplyment database connection

    I use the deploy to Remote server to deply a project to Sun Application Server 8.1. When i try to connect to the database I get connection error
    javax.servlet.ServletException: javax.faces.FacesException: java.sql.SQLException: Error in allocating a connection. Cause: Connection could not be allocated because: Access denied for user ''@'testserver.com' (using password: YES)
    it seems it doesnt pick the User from the Connection pull settings. The settings at the server seem correct.
    This works fine when i deply to Application server 8.0 that comes with the Sun creator

    The user is correct and it does work from 8.0/
    The server doesnt pick the username from the
    configuration
    the error message says use '' emptyWhat "configuration" are you referring to? Do you mean the way that you have the 8.1 server set up?
    Since you cannot ping, then there is something wrong with the configuration on the 8.1 server.
    Why don't you remove the connection pool and start over from scratch and cut/paste the settings from the 8.0 app server over. Then make sure you can ping once everything is set up.
    Also, where is the 8.1 box located? Are you sure it has access to the database that you are trying to reach?
    You might try posting this to the App Server forum as it really isn't a Creator problem.

  • JDBC Connection Pool to DB2 database - Problem

    When trying to create a new JDBC Connection Pool in WebLogic using BEA Type 4 driver
    for DB2, I get the following error:
    [BEA][DB2 JDBC Driver]A commitment command has been received on a protected conversation.
    The commit and rollback commands are not allowed on protected conversations.
    DB2 v8.1 Enterprise Edition on Sun Solaris v8
    WebLogic 8.1 SP2 on Windows 2000/XP
    Please help!

    Sorry forgot to add the exception, this is the exception,
    java.sql.SQLException: RSR0029: Missing Password for Application Authorization
    Any idea as when we get this exception?

  • ResultSet problem with a jdbc connection pool implementation

    Hi
    I'm trying to use jdbc connection pool in my java application (js2e 1.4.0_01)
    from the example at http://www.developer.com/tech/article.php/626141
    In my main() code, in addition to JDBCConnection, JDBCConnectionImpl and JDBCPool classes, i use
    JDBCConnection conn;
    conn = new JDBCConnection(dbName);
    // make a statement
    sqlString = "SELECT........."
    ResultSet rs = null;
    rs = conn.sendRequest(sqlString, rs);
    // print result
    while (rs.next()) {
    Unfortunately i get an error like "ResultSet is closed" in the line corresponding to rs.next. The error disappears if i remove the line
    stmt.close();
    in the method sendRequest of the JDBCConnectionImpl class.
    1) Does anybody knows the solution?
    2) How to close all connections?
    Thanks you in advance.

    Hi ,
    You are closing the statement and then trying to use resultset , which is not going to work .So close then statment after using resultset .Ideally the code should be like this
    try {
    conn = // get the connection
    pstmt = conn.prepareStatement(sql);
    rs = pstmt.executeQuery();
    while ( rs.next()){
    // do something
    catch (Exception ex) {
    finally {
    try {
    if (rs != null)
    rs.close();
    if (pstmt != null)
    pstmt.close();
    if(conn!=null )
    conn.close();

  • Weblogic 7.0 , MySQL 3.23 JDBC Connection Pools

    i am using weblogic 7.0 and MySQL 3.23 and right now my objective is to create,
    configure and test a JDBC
    connection pool using the Administrative console.
    Here is what i have done till now
    - set the classpath of the MySQL driver in the startWLS.cmd like this
    SET MYSQL_DRIVER=C:\mysqldriver\mysql-connector-java-2.0.14\mysql-connector-java-2.0.14-bin.jar
    set CLASSPATH=%MYSQL_DRIVER%;%CLASSPATH%
    - using the weblogic administrative console i have created a new connection pool
    named as
    testpool.
    - Here is what i have in the testpool general tab
    Name: testpool
    URL: jdbc:mysql//localhost:3306/test (test is the name of the database in mysql)
    Driver Classname: org.gjt.mm.mysql.Driver
    I have not entered any Properties, ACL Name, Password or Open String Password.
    - Now i go the the Testing tab and enter a name of a table in my test database
    and click on Apply
    and on the command window i am getting the following exception
    java.sql.SQLException No suitable driver
    Thanks in advance,
    Ashish

    Thanks a lot Slava. After reading your mail and the post i was able to get it working.
    "Slava Imeshev" <[email protected]> wrote:
    Hi Ashish,
    I figured out what's the problem. URL in the connection pool
    definition is malformed. It's
    jdbc:mysql//localhost:3306/test
    while the correct one should have colon after mysql:
    jdbc:mysql://localhost:3306/test
    Regards,
    Slava Imeshev
    "Ashish Sureka" <[email protected]> wrote in message
    news:[email protected]...
    I am sorry, the program that i posted here is not comming properlyformatted but
    i am able to run a simple java program that connects to MySQL and alsoa
    servlet
    that connects to the MySQL. The only problem i am having is includingthe
    MySQL
    driver jar files to the weblogic server classpath.
    Thanks,
    Ashish.
    "Ashish Sureka" <[email protected]> wrote:
    Hello Joseph Weinstein,
    Actually, i already tried the same approach that you have mentioned
    in
    your reply
    before i posted my message here. Following is the program that i use
    to check
    MySQL connection.
    import java.sql.*;
    public class MySQLConnect
    public static void main(String[] args) throws Exception
    try {
    Class.forName ( "org.gjt.mm.mysql.Driver" );
    System.out.println ( "MySQL Driver Found" );
    } catch ( java.lang.ClassNotFoundException e ) {
    System.out.println("MySQL JDBC Driver not found ... ");
    throw ( e );
    String url = "";
    Connection con = null;
    try {
    url = "jdbc:mysql://" + "localhost:3306" + "/" + "test";
    con = DriverManager.getConnection(url);
    System.out.println("Connection established to " + url + "");
    } catch ( java.sql.SQLException e ) {
    System.out.println("Connection couldn't be established to " + url);
    String sqlStatement = "SELECT * FROM testtable";
    try {
    Statement s = con.createStatement();
    s.execute (sqlStatement);
    s.close ( );
    } catch ( SQLException e ) {
    System.out.println ( "Error executing sql statement" );
    con.close();
    The classpath that i use to run this program is
    SET PATH=C:\bea\jdk131_03\bin
    SETCLASSPATH=C:\bea\jdk131_03\jre\lib\rt.jar;C:\bea\weblogic700\ebcc\lib\ext\se
    rvlet.jar;C:\CSC413\Demos\HelloApp\HelloAppJAR
    SET CLASSPATH=%CLASSPATH%;C:\bea\weblogic700\server\lib\weblogic.jar
    SETMYSQL_DRIVER=C:\mysqldriver\mysql-connector-java-2.0.14\mysql-connector-java
    -2.0.14-bin.jar
    set CLASSPATH=.;%MYSQL_DRIVER%;%CLASSPATH%
    I have also written a Servlet which checks the MySQL connection. For
    the servlet
    i added the MySQL driver jar files in the WEB-INF/lib directory ofthe
    servlet
    web application and it is working fine.
    do you want me to attach the startWLS.cmd file that i changed to include
    the MySQL
    driver classpath.
    Thanks for your replies,
    Ashish.
    Joseph Weinstein <[email protected]> wrote:
    Ashish Sureka wrote:
    When i start the weblogic server using the command prompt by executingthe startWLS.cmd,
    i can see the classpath the server is using on the command window
    and
    that includes
    the jar file for the MySQL driver but still it is throwing a
    SQLException
    and
    saying that No Suitable driver.
    How do i include a external library or jar file on the weblogic
    server's
    classpath.
    is there a specific directory where i should put the MySQL driver
    jar
    file .
    Thanks,
    Ashish.No. Let's simplfy the problem. Please run a tiny standalone Java
    program
    that
    just makes a JDBC connection to your MySQL DBMS, with no weblogic
    code in the picture. When you succeed at this, show me the CLASSPATH
    and
    PATH of the shell that ran the program successfully, and show methe
    few lines
    of code that made the connection. Then we will know the problem.It
    may
    be that
    the URL you're passing to the pool is not exactly correct for that
    driver.
    Joe
    Joseph Weinstein <[email protected]> wrote:
    Ashish Sureka wrote:
    i am using weblogic 7.0 and MySQL 3.23 and right now my objective
    is
    to create,
    configure and test a JDBC
    connection pool using the Administrative console.
    Here is what i have done till now
    - set the classpath of the MySQL driver in the startWLS.cmd
    like
    this
    SET
    MYSQL_DRIVER=C:\mysqldriver\mysql-connector-java-2.0.14\mysql-connector-java
    -2.0.14-bin.jar
    set CLASSPATH=%MYSQL_DRIVER%;%CLASSPATH%
    - using the weblogic administrative console i have created anew
    connection
    pool
    named as
    testpool.
    - Here is what i have in the testpool general tab
    Name: testpool
    URL: jdbc:mysql//localhost:3306/test (test is the name of
    the
    database
    in mysql)
    Driver Classname: org.gjt.mm.mysql.Driver
    I have not entered any Properties, ACL Name, Password or
    Open
    String
    Password.
    - Now i go the the Testing tab and enter a name of a table in
    my
    test
    database
    and click on Apply
    and on the command window i am getting the following exception
    java.sql.SQLException No suitable driverWatch the first lines that the server prints out when the script
    starts
    it. The script
    shows the classpath that was constructed for the server. It is
    likely
    that you need
    to do something else to ensure your driver is really in the classpath
    the server uses.
    Joe
    Thanks in advance,
    Ashish

  • Ias support for EJB, JSP/servlets,JDBC, connection pooling, XML, SOAP, load balancing etc

    Please let me know where I can find more information regarding iPlanet usage/deployment/configuring/tuning etc for support of technologies - like EJB, JSP/servlets, JDBC, connection pooling, XML, load balancing, JDBC & Transactions
    (I have already read the 'Getting Started with the iPlanet Application Server' part five and six - http://developer.iplanet.com/appserver/testdrive/partfive.jsp and partsix.jsp)(I am using the ias testdrive version).

    Hi,
    It's difficult to explain unless the J2EE architecture is understood. Also, explaining things like load balancing, Transactions, tuning, are bit vague and could blow the disk space of this site.
    To get started, the best way is to test the sample applications and the best part is you don't require internet connection to follow each steps. Install iWS and iAS, open browser, type in http://hostname:port/ias-samples/index.html. You can find links to the sample applications bundled. Please follow the steps given on deploying the application. This will enable you to a higher level.
    Regards
    Ganesh .R
    Developer Technical Support
    Sun Microsystems
    http://www.sun.com/developers/support

  • 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.
    Ben

    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?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 someoneelse

    Hi 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