JDBC connection does not re-establish... - Weblogic

This is a discussion on JDBC connection does not re-establish... - Weblogic ; We have a jdbc connection, and if the connection to the database server is ever lost, the jdbc connection pool connections will not re-connect to the database after a reset. We have a test table name and a refresh interval ...

+ Reply to Thread
Results 1 to 10 of 10

Thread: JDBC connection does not re-establish...

  1. JDBC connection does not re-establish...

    We have a jdbc connection, and if the connection to the database server is ever lost, the jdbc connection pool connections will not re-connect to the database after a reset. We have a test table name and a refresh interval set for 15 minutes, but still not getting a re-established connection.

    Please Advise.

    Thanks,

  2. Re: JDBC connection does not re-establish...



    Joe Weinstein wrote:
    >
    >
    >Chase Miller wrote:
    >
    >> We have a jdbc connection, and if the connection to the database server

    >is ever lost, the jdbc connection pool connections will not re-connect
    >to the database after a reset. We have a test table name and a refresh
    >interval set for 15 minutes, but still not getting a re-established
    >connection.
    >>
    >> Please Advise.
    >>
    >> Thanks,

    >
    >What does the server log and/or jdbc log show? If refresh is running
    >periodically, it will make log entries about connections it's testing,
    >and whether the test failed or passed etc. The jdbc log will contain
    >any SQLException that occurred. Show the pool definition from the
    >config file.
    >Joe
    >

    #### '9' for queue: 'default'> <> <001099> as400pool" reset by "principals=[weblogic, Administrators]">
    #### '9' for queue: 'default'> <> <001067> ol "as400pool" refreshed.>
    #### '9' for queue: 'default'> <> <001067> ol "as400pool" refreshed.>
    #### '9' for queue: 'default'> <> <001067> ol "as400pool" refreshed.>
    #### '9' for queue: 'default'> <> <001067> ol "as400pool" refreshed.>
    #### '9' for queue: 'default'> <> <001067> ol "as400pool" refreshed.>
    #### '9' for queue: 'default'> <> <001095> rom pool "as400pool" was tested during reserve with a select count(*) from "DATAIP.IV310F"
    and failed:

  3. Re: JDBC connection does not re-establish...



    Chase Miller wrote:

    > We have a jdbc connection, and if the connection to the database server is ever lost, the jdbc connection pool connections will not re-connect to the database after a reset. We have a test table name and a refresh interval set for 15 minutes, but still not getting a re-established connection.
    >
    > Please Advise.
    >
    > Thanks,


    What does the server log and/or jdbc log show? If refresh is running
    periodically, it will make log entries about connections it's testing,
    and whether the test failed or passed etc. The jdbc log will contain
    any SQLException that occurred. Show the pool definition from the
    config file.
    Joe


  4. Re: JDBC connection does not re-establish...



    chase miller wrote:

    > Joe Weinstein wrote:
    >
    >>
    >>Chase Miller wrote:
    >>
    >>
    >>>We have a jdbc connection, and if the connection to the database server

    >>
    >>is ever lost, the jdbc connection pool connections will not re-connect
    >>to the database after a reset. We have a test table name and a refresh
    >>interval set for 15 minutes, but still not getting a re-established
    >>connection.
    >>
    >>>Please Advise.
    >>>
    >>>Thanks,

    >>
    >>What does the server log and/or jdbc log show? If refresh is running
    >>periodically, it will make log entries about connections it's testing,
    >>and whether the test failed or passed etc. The jdbc log will contain
    >>any SQLException that occurred. Show the pool definition from the
    >>config file.
    >>Joe
    >>

    >
    > #### > '9' for queue: 'default'> <> <001099> > as400pool" reset by "principals=[weblogic, Administrators]">
    > #### > '9' for queue: 'default'> <> <001067> > ol "as400pool" refreshed.>
    > #### > '9' for queue: 'default'> <> <001067> > ol "as400pool" refreshed.>
    > #### > '9' for queue: 'default'> <> <001067> > ol "as400pool" refreshed.>
    > #### > '9' for queue: 'default'> <> <001067> > ol "as400pool" refreshed.>
    > #### > '9' for queue: 'default'> <> <001067> > ol "as400pool" refreshed.>
    > #### > '9' for queue: 'default'> <> <001095>
    > rom pool "as400pool" was tested during reserve with a select count(*) from "DATAIP.IV310F"
    > and failed:


    That shows the pool doing a series of successful refreshes of failed connections,
    followed by one failure to refresh a broken connection.
    Is your pool set to test-on-reserve? refresh only tests currently-unreserved connections.
    An application that reserved a broken connection removed it from the pool till it is
    closed, so it is possible for refresh to miss a dead connection and an application
    re-reserve it. Test-on-reserve guarantees to test/replace a bad connection and return
    a known good connection to the app.
    Joe


  5. Re: JDBC connection does not re-establish...


    Joe Weinstein wrote:
    >
    >
    >chase miller wrote:
    >
    >> Joe Weinstein wrote:
    >>
    >>>
    >>>Chase Miller wrote:
    >>>
    >>>
    >>>>We have a jdbc connection, and if the connection to the database server
    >>>
    >>>is ever lost, the jdbc connection pool connections will not re-connect
    >>>to the database after a reset. We have a test table name and a refresh
    >>>interval set for 15 minutes, but still not getting a re-established
    >>>connection.
    >>>
    >>>>Please Advise.
    >>>>
    >>>>Thanks,
    >>>
    >>>What does the server log and/or jdbc log show? If refresh is running
    >>>periodically, it will make log entries about connections it's testing,
    >>>and whether the test failed or passed etc. The jdbc log will contain
    >>>any SQLException that occurred. Show the pool definition from the
    >>>config file.
    >>>Joe
    >>>

    >>
    >> ####

    >
    >> '9' for queue: 'default'> <> <001099>
    >pool "
    >> as400pool" reset by "principals=[weblogic, Administrators]">
    >> ####

    >
    >> '9' for queue: 'default'> <> <001067>
    >for po
    >> ol "as400pool" refreshed.>
    >> ####

    >
    >> '9' for queue: 'default'> <> <001067>
    >for po
    >> ol "as400pool" refreshed.>
    >> ####

    >
    >> '9' for queue: 'default'> <> <001067>
    >for po
    >> ol "as400pool" refreshed.>
    >> ####

    >
    >> '9' for queue: 'default'> <> <001067>
    >for po
    >> ol "as400pool" refreshed.>
    >> ####

    >
    >> '9' for queue: 'default'> <> <001067>
    >for po
    >> ol "as400pool" refreshed.>
    >> ####

    >
    >> '9' for queue: 'default'> <> <001095>

    >f
    >> rom pool "as400pool" was tested during reserve with a select count(*)

    >from "DATAIP.IV310F"
    >> and failed:

    >
    >That shows the pool doing a series of successful refreshes of failed
    >connections,
    >followed by one failure to refresh a broken connection.
    >Is your pool set to test-on-reserve? refresh only tests currently-unreserved
    >connections.
    >An application that reserved a broken connection removed it from the
    >pool till it is
    >closed, so it is possible for refresh to miss a dead connection and an
    >application
    >re-reserve it. Test-on-reserve guarantees to test/replace a bad connection
    >and return
    >a known good connection to the app.
    >Joe
    >

    we do have test on reserver enabled.

  6. Re: JDBC connection does not re-establish...

    Show me the pool definiton, and if you can duplicate the problem,
    please turn on jdbc logging. It will show the actual connection re-connect
    failures.
    Joe

    chase miller wrote:
    > Joe Weinstein wrote:
    >
    >>
    >>chase miller wrote:
    >>
    >>
    >>>Joe Weinstein wrote:
    >>>
    >>>
    >>>>Chase Miller wrote:
    >>>>
    >>>>
    >>>>
    >>>>>We have a jdbc connection, and if the connection to the database server
    >>>>
    >>>>is ever lost, the jdbc connection pool connections will not re-connect
    >>>>to the database after a reset. We have a test table name and a refresh
    >>>>interval set for 15 minutes, but still not getting a re-established
    >>>>connection.
    >>>>
    >>>>
    >>>>>Please Advise.
    >>>>>
    >>>>>Thanks,
    >>>>
    >>>>What does the server log and/or jdbc log show? If refresh is running
    >>>>periodically, it will make log entries about connections it's testing,
    >>>>and whether the test failed or passed etc. The jdbc log will contain
    >>>>any SQLException that occurred. Show the pool definition from the
    >>>>config file.
    >>>>Joe
    >>>>
    >>>
    >>>####

    >>
    >> >>
    >>>'9' for queue: 'default'> <> <001099>
    >>
    >>pool "
    >>
    >>>as400pool" reset by "principals=[weblogic, Administrators]">
    >>>####

    >>
    >> >>
    >>>'9' for queue: 'default'> <> <001067>
    >>
    >>for po
    >>
    >>>ol "as400pool" refreshed.>
    >>>####

    >>
    >> >>
    >>>'9' for queue: 'default'> <> <001067>
    >>
    >>for po
    >>
    >>>ol "as400pool" refreshed.>
    >>>####

    >>
    >> >>
    >>>'9' for queue: 'default'> <> <001067>
    >>
    >>for po
    >>
    >>>ol "as400pool" refreshed.>
    >>>####

    >>
    >> >>
    >>>'9' for queue: 'default'> <> <001067>
    >>
    >>for po
    >>
    >>>ol "as400pool" refreshed.>
    >>>####

    >>
    >> >>
    >>>'9' for queue: 'default'> <> <001067>
    >>
    >>for po
    >>
    >>>ol "as400pool" refreshed.>
    >>>####

    >>
    >> >>
    >>>'9' for queue: 'default'> <> <001095>

    >>
    >>f
    >>
    >>>rom pool "as400pool" was tested during reserve with a select count(*)

    >
    >>from "DATAIP.IV310F"

    >
    >>>and failed:

    >>
    >>That shows the pool doing a series of successful refreshes of failed
    >>connections,
    >>followed by one failure to refresh a broken connection.
    >>Is your pool set to test-on-reserve? refresh only tests currently-unreserved
    >>connections.
    >>An application that reserved a broken connection removed it from the
    >>pool till it is
    >>closed, so it is possible for refresh to miss a dead connection and an
    >>application
    >>re-reserve it. Test-on-reserve guarantees to test/replace a bad connection
    >>and return
    >>a known good connection to the app.
    >>Joe
    >>

    >
    > we do have test on reserver enabled.



  7. Re: JDBC connection does not re-establish...


    here is what is in the jdbc.log. Also, here in the jdbc config.
    DriverName="com.ibm.as400.access.AS400JDBCDriver"
    InitialCapacity="5" MaxCapacity="10" Name="as400pool"
    TestConnectionsOnReserve="true" TestTableName="DATAIP.IV310F" URL="jdbc:as400://161.173.222.10:7200"/>
    PoolName="as400pool" Targets="vis,myserver"/>
    as400: Statement STMT0001: Executing [select count(*) from DATAIP.IV310F].
    com.ibm.as400.access.ConnectionDroppedException: Connection was dropped unexpectedly.
    at com.ibm.as400.access.ClientAccessDataStream.constr uct(ClientAccessDataStream.java(Compiled
    Code))
    at com.ibm.as400.access.AS400ThreadedServer.run(AS400 ThreadedServer.java:216)
    at java.lang.Thread.run(Thread.java:512)
    SQLException: SQLState(08003) vendor code(-99999)
    java.sql.SQLException: The connection does not exist.(Connection was dropped unexpectedly.)
    at com.ibm.as400.access.JDError.throwSQLException(JDE rror.java(Compiled
    Code))
    at com.ibm.as400.access.AS400JDBCConnection.send(AS40 0JDBCConnection.java(Compiled
    Code))
    at com.ibm.as400.access.AS400JDBCStatement.syncRPB(AS 400JDBCStatement.java(Compiled
    Code))
    at com.ibm.as400.access.AS400JDBCStatement.syncRPB(AS 400JDBCStatement.java(Compiled
    Code))
    at com.ibm.as400.access.AS400JDBCStatement.commonPrep are(AS400JDBCStatement.java:979)
    at com.ibm.as400.access.AS400JDBCStatement.execute(AS 400JDBCStatement.java:1162)
    at weblogic.jdbc.common.internal.ConnectionEnv.test(C onnectionEnv.java(Compiled
    Code))
    at weblogic.jdbc.common.internal.ResourceAllocator.re serve(ResourceAllocator.java(Compiled
    Code))
    at weblogic.jdbc.common.internal.ResourceAllocator.tr igger(ResourceAllocator.java(Compiled
    Code))
    at weblogic.jdbc.common.internal.ResourceAllocator.tr igger(ResourceAllocator.java(Compiled
    Code))
    at weblogic.time.common.internal.ScheduledTrigger.run (ScheduledTrigger.java(Compiled
    Code))
    at weblogic.security.service.SecurityServiceManager.r unAs(SecurityServiceManager.java(Compiled
    Code))
    at weblogic.time.common.internal.ScheduledTrigger.exe cuteLocally(ScheduledTrigger.java(Compiled
    Code))
    at weblogic.time.server.ScheduledTrigger.execute(Sche duledTrigger.java(Compiled
    Code))
    at weblogic.time.server.ScheduledTrigger.execute(Sche duledTrigger.java(Compiled
    Code))
    at weblogic.kernel.ExecuteThread.execute(ExecuteThrea d.java(Compiled Code))
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.ja va:134)
    Joe Weinstein wrote:
    >Show me the pool definiton, and if you can duplicate the problem,
    >please turn on jdbc logging. It will show the actual connection re-connect
    >failures.
    >Joe
    >
    >chase miller wrote:
    >> Joe Weinstein wrote:
    >>
    >>>
    >>>chase miller wrote:
    >>>
    >>>
    >>>>Joe Weinstein wrote:
    >>>>
    >>>>
    >>>>>Chase Miller wrote:
    >>>>>
    >>>>>
    >>>>>
    >>>>>>We have a jdbc connection, and if the connection to the database

    >server
    >>>>>
    >>>>>is ever lost, the jdbc connection pool connections will not re-connect
    >>>>>to the database after a reset. We have a test table name and a refresh
    >>>>>interval set for 15 minutes, but still not getting a re-established
    >>>>>connection.
    >>>>>
    >>>>>
    >>>>>>Please Advise.
    >>>>>>
    >>>>>>Thanks,
    >>>>>
    >>>>>What does the server log and/or jdbc log show? If refresh is running
    >>>>>periodically, it will make log entries about connections it's testing,
    >>>>>and whether the test failed or passed etc. The jdbc log will contain
    >>>>>any SQLException that occurred. Show the pool definition from the
    >>>>>config file.
    >>>>>Joe
    >>>>>
    >>>>
    >>>>####
    >>>
    >>> >>>
    >>>>'9' for queue: 'default'> <> <001099> >>>
    >>>pool "
    >>>
    >>>>as400pool" reset by "principals=[weblogic, Administrators]">
    >>>>####
    >>>
    >>> >>>
    >>>>'9' for queue: 'default'> <> <001067> >>>
    >>>for po
    >>>
    >>>>ol "as400pool" refreshed.>
    >>>>####
    >>>
    >>> >>>
    >>>>'9' for queue: 'default'> <> <001067> >>>
    >>>for po
    >>>
    >>>>ol "as400pool" refreshed.>
    >>>>####
    >>>
    >>> >>>
    >>>>'9' for queue: 'default'> <> <001067> >>>
    >>>for po
    >>>
    >>>>ol "as400pool" refreshed.>
    >>>>####
    >>>
    >>> >>>
    >>>>'9' for queue: 'default'> <> <001067> >>>
    >>>for po
    >>>
    >>>>ol "as400pool" refreshed.>
    >>>>####
    >>>
    >>> >>>
    >>>>'9' for queue: 'default'> <> <001067> >>>
    >>>for po
    >>>
    >>>>ol "as400pool" refreshed.>
    >>>>####
    >>>
    >>> >>>
    >>>>'9' for queue: 'default'> <> <001095>
    >>>
    >>>f
    >>>
    >>>>rom pool "as400pool" was tested during reserve with a select count(*)

    >>
    >>>from "DATAIP.IV310F"

    >>
    >>>>and failed:
    >>>
    >>>That shows the pool doing a series of successful refreshes of failed
    >>>connections,
    >>>followed by one failure to refresh a broken connection.
    >>>Is your pool set to test-on-reserve? refresh only tests currently-unreserved
    >>>connections.
    >>>An application that reserved a broken connection removed it from the
    >>>pool till it is
    >>>closed, so it is possible for refresh to miss a dead connection and

    >an
    >>>application
    >>>re-reserve it. Test-on-reserve guarantees to test/replace a bad connection
    >>>and return
    >>>a known good connection to the app.
    >>>Joe
    >>>

    >>
    >> we do have test on reserver enabled.

    >



  8. Re: JDBC connection does not re-establish...



    chase miller wrote:

    > here is what is in the jdbc.log. Also, here in the jdbc config.


    Thanks. That log entry shows that the DBMS (or network) has dropped
    a connection out from under the AS400 driver, and that we caught
    the failure during our test-on-reserve algorithm. What does the log
    go on to show? Typically, we would close the dead connection and
    try to create a new connection to give you. If we succeed (if the
    driver gave us a new connection) we return it to you. If we failed,
    (if the getConnection() call failed) we would send you an exception.
    What happens in your application after this? The only oddity would
    be if after the dead connection and retry, the driver gave us a
    new connection *which was DOA*. When we create a new replacement
    connection, we do not immediately test it with a new query. We
    assume that a fresh connection is OK...
    thanks,
    Joe

    > DriverName="com.ibm.as400.access.AS400JDBCDriver"
    > InitialCapacity="5" MaxCapacity="10" Name="as400pool"
    > TestConnectionsOnReserve="true" TestTableName="DATAIP.IV310F" URL="jdbc:as400://161.173.222.10:7200"/>
    > > PoolName="as400pool" Targets="vis,myserver"/>
    > as400: Statement STMT0001: Executing [select count(*) from DATAIP.IV310F].
    > com.ibm.as400.access.ConnectionDroppedException: Connection was dropped unexpectedly.
    > at com.ibm.as400.access.ClientAccessDataStream.constr uct(ClientAccessDataStream.java(Compiled
    > Code))
    > at com.ibm.as400.access.AS400ThreadedServer.run(AS400 ThreadedServer.java:216)
    > at java.lang.Thread.run(Thread.java:512)
    > SQLException: SQLState(08003) vendor code(-99999)
    > java.sql.SQLException: The connection does not exist.(Connection was dropped unexpectedly.)
    > at com.ibm.as400.access.JDError.throwSQLException(JDE rror.java(Compiled
    > Code))
    > at com.ibm.as400.access.AS400JDBCConnection.send(AS40 0JDBCConnection.java(Compiled
    > Code))
    > at com.ibm.as400.access.AS400JDBCStatement.syncRPB(AS 400JDBCStatement.java(Compiled
    > Code))
    > at com.ibm.as400.access.AS400JDBCStatement.syncRPB(AS 400JDBCStatement.java(Compiled
    > Code))
    > at com.ibm.as400.access.AS400JDBCStatement.commonPrep are(AS400JDBCStatement.java:979)
    > at com.ibm.as400.access.AS400JDBCStatement.execute(AS 400JDBCStatement.java:1162)
    > at weblogic.jdbc.common.internal.ConnectionEnv.test(C onnectionEnv.java(Compiled
    > Code))
    > at weblogic.jdbc.common.internal.ResourceAllocator.re serve(ResourceAllocator.java(Compiled
    > Code))
    > at weblogic.jdbc.common.internal.ResourceAllocator.tr igger(ResourceAllocator.java(Compiled
    > Code))
    > at weblogic.jdbc.common.internal.ResourceAllocator.tr igger(ResourceAllocator.java(Compiled
    > Code))
    > at weblogic.time.common.internal.ScheduledTrigger.run (ScheduledTrigger.java(Compiled
    > Code))
    > at weblogic.security.service.SecurityServiceManager.r unAs(SecurityServiceManager.java(Compiled
    > Code))
    > at weblogic.time.common.internal.ScheduledTrigger.exe cuteLocally(ScheduledTrigger.java(Compiled
    > Code))
    > at weblogic.time.server.ScheduledTrigger.execute(Sche duledTrigger.java(Compiled
    > Code))
    > at weblogic.time.server.ScheduledTrigger.execute(Sche duledTrigger.java(Compiled
    > Code))
    > at weblogic.kernel.ExecuteThread.execute(ExecuteThrea d.java(Compiled Code))
    > at weblogic.kernel.ExecuteThread.run(ExecuteThread.ja va:134)
    > Joe Weinstein wrote:
    >
    >>Show me the pool definiton, and if you can duplicate the problem,
    >>please turn on jdbc logging. It will show the actual connection re-connect
    >>failures.
    >>Joe
    >>
    >>chase miller wrote:
    >>
    >>>Joe Weinstein wrote:
    >>>
    >>>
    >>>>chase miller wrote:
    >>>>
    >>>>
    >>>>
    >>>>>Joe Weinstein wrote:
    >>>>>
    >>>>>
    >>>>>
    >>>>>>Chase Miller wrote:
    >>>>>>
    >>>>>>
    >>>>>>
    >>>>>>
    >>>>>>>We have a jdbc connection, and if the connection to the database

    >>
    >>server
    >>
    >>>>>>is ever lost, the jdbc connection pool connections will not re-connect
    >>>>>>to the database after a reset. We have a test table name and a refresh
    >>>>>>interval set for 15 minutes, but still not getting a re-established
    >>>>>>connection.
    >>>>>>
    >>>>>>
    >>>>>>
    >>>>>>>Please Advise.
    >>>>>>>
    >>>>>>>Thanks,
    >>>>>>
    >>>>>>What does the server log and/or jdbc log show? If refresh is running
    >>>>>>periodically, it will make log entries about connections it's testing,
    >>>>>>and whether the test failed or passed etc. The jdbc log will contain
    >>>>>>any SQLException that occurred. Show the pool definition from the
    >>>>>>config file.
    >>>>>>Joe
    >>>>>>
    >>>>>
    >>>>>####
    >>>>
    >>>> >>>>
    >>>>
    >>>>>'9' for queue: 'default'> <> <001099> >>>>
    >>>>pool "
    >>>>
    >>>>
    >>>>>as400pool" reset by "principals=[weblogic, Administrators]">
    >>>>>####
    >>>>
    >>>> >>>>
    >>>>
    >>>>>'9' for queue: 'default'> <> <001067> >>>>
    >>>>for po
    >>>>
    >>>>
    >>>>>ol "as400pool" refreshed.>
    >>>>>####
    >>>>
    >>>> >>>>
    >>>>
    >>>>>'9' for queue: 'default'> <> <001067> >>>>
    >>>>for po
    >>>>
    >>>>
    >>>>>ol "as400pool" refreshed.>
    >>>>>####
    >>>>
    >>>> >>>>
    >>>>
    >>>>>'9' for queue: 'default'> <> <001067> >>>>
    >>>>for po
    >>>>
    >>>>
    >>>>>ol "as400pool" refreshed.>
    >>>>>####
    >>>>
    >>>> >>>>
    >>>>
    >>>>>'9' for queue: 'default'> <> <001067> >>>>
    >>>>for po
    >>>>
    >>>>
    >>>>>ol "as400pool" refreshed.>
    >>>>>####
    >>>>
    >>>> >>>>
    >>>>
    >>>>>'9' for queue: 'default'> <> <001067> >>>>
    >>>>for po
    >>>>
    >>>>
    >>>>>ol "as400pool" refreshed.>
    >>>>>####
    >>>>
    >>>> >>>>
    >>>>
    >>>>>'9' for queue: 'default'> <> <001095>
    >>>>
    >>>>f
    >>>>
    >>>>
    >>>>>rom pool "as400pool" was tested during reserve with a select count(*)
    >>>
    >>>>from "DATAIP.IV310F"
    >>>
    >>>
    >>>>>and failed:
    >>>>
    >>>>That shows the pool doing a series of successful refreshes of failed
    >>>>connections,
    >>>>followed by one failure to refresh a broken connection.
    >>>>Is your pool set to test-on-reserve? refresh only tests currently-unreserved
    >>>>connections.
    >>>>An application that reserved a broken connection removed it from the
    >>>>pool till it is
    >>>>closed, so it is possible for refresh to miss a dead connection and

    >>
    >>an
    >>
    >>>>application
    >>>>re-reserve it. Test-on-reserve guarantees to test/replace a bad connection
    >>>>and return
    >>>>a known good connection to the app.
    >>>>Joe
    >>>>
    >>>
    >>>we do have test on reserver enabled.

    >>

    >



  9. Re: JDBC connection does not re-establish...

    Hello. I'm having the same problem. Joe, you last wrote,
    "That log entry shows that the DBMS (or network) has dropped
    a connection out from under the AS400 driver, and that we caught
    the failure during our test-on-reserve algorithm. What does the log
    go on to show? Typically, we would close the dead connection and
    try to create a new connection to give you. If we succeed (if the
    driver gave us a new connection) we return it to you. If we failed,
    (if the getConnection() call failed) we would send you an exception.
    What happens in your application after this? The only oddity would
    be if after the dead connection and retry, the driver gave us a
    new connection *which was DOA*. When we create a new replacement
    connection, we do not immediately test it with a new query. We
    assume that a fresh connection is OK..."

    Forgive me if I'm repeating text that will appear when I post this message, but this is my first time so I wanted to be sure this will appear so I can refer to it and have you understand my references.

    How could I handle the DOA case, since I think that is happening? Any other parameters to use in the weblogic.properties file OR is my only alternative is to upgrade to a version that has this functionality?

    Do you know if the COM.ibm.db2.jdbc.app driver has known problems in this area and maybe it's not weblogic server. Another words, maybe it's the db2 driver returning the DOA connections that it shouldn't.

    Thank you in advance, Derrick

  10. Re: JDBC connection does not re-establish...



    derrick wong wrote:

    > Hello. I'm having the same problem. Joe, you last wrote,
    > "That log entry shows that the DBMS (or network) has dropped
    > a connection out from under the AS400 driver, and that we caught
    > the failure during our test-on-reserve algorithm. What does the log
    > go on to show? Typically, we would close the dead connection and
    > try to create a new connection to give you. If we succeed (if the
    > driver gave us a new connection) we return it to you. If we failed,
    > (if the getConnection() call failed) we would send you an exception.
    > What happens in your application after this? The only oddity would
    > be if after the dead connection and retry, the driver gave us a
    > new connection *which was DOA*. When we create a new replacement
    > connection, we do not immediately test it with a new query. We
    > assume that a fresh connection is OK..."
    >
    > Forgive me if I'm repeating text that will appear when I post this message, but this is my first time so I wanted to be sure this will appear so I can refer to it and have you understand my references.
    >
    > How could I handle the DOA case, since I think that is happening? Any other parameters to use in the weblogic.properties file OR is my only alternative is to upgrade to a version that has this functionality?
    >
    > Do you know if the COM.ibm.db2.jdbc.app driver has known problems in this area and maybe it's not weblogic server. Another words, maybe it's the db2 driver returning the DOA connections that it shouldn't.
    >
    > Thank you in advance, Derrick


    Hi. Tell me your exact symptoms. The above stuff does sound like the connection
    between the driver and DBMS is unreliabl.e... I don't know whether it's the
    driver, network, or DBMS, but it's not WebLogic...
    Joe