Armin what happens when you set the connection pool to test connections using these flags ?
<connection-pool timeBetweenEvictionRunsMillis="10000" minEvictableIdleTimeMillis="10000" whenExhaustedAction="2" testOnBorrow="false" testWhileIdle="true" validation-query="select 1 from dual"/> If it finds dead connections 1. Does it drop them and reconnect them or just drop them ? 2. If it just drops them, what happens when the broker goes to borrow from the pool and finds nothing in there. Since the setting for "whenExhaustedAction" is set to GROW, will it at least create a connection thereby avoiding Reinhard's problem altogether ? just a thought. James Nyika Cambridge Technology Partners The global eServices company of Novell, Inc. http://www.novell.com >>> [EMAIL PROTECTED] 5/29/2003 8:41:24 AM >>> Hi Armin, yes I think so. A 'refresh()' would make sense. Because there are a lot of situations where the connection to the database can be lost. And when I look in archive for similar situations, there are some of them. I saw, there is just a 'connection.isClosed()' in ConnectionFactoryConPooledImpl.validateObject() and a lost connection is already open. And additionaly the connection will be checked only if a broker will be borrowed. What do you think about my actual workaround? public void checkConnection() throws MyConnectionFailException { try { // try a fast testquery like 'select 1 from dual' in oracle .... Object obj = broker.getObjectByQuery(query); } catch (Exception ex) { try { PersistenceBrokerFactory.releaseAllInstances(); broker = PersistenceBrokerFactory.createPersistenceBroker(...); } catch (Exception ex) { throw new MyConnectionFailException(); } } } Thanks in advance, Reinhard -----Original Message----- From: Armin Waibel [mailto:[EMAIL PROTECTED] Sent: Wednesday, May 28, 2003 3:13 PM To: OJB Users List Subject: Re: Handle broken database connections Hi Reinhard, ----- Original Message ----- From: "Reinhard Dunst" <[EMAIL PROTECTED]> To: "OJB-Users-List (E-mail)" <[EMAIL PROTECTED]> Sent: Wednesday, May 28, 2003 1:13 PM Subject: Handle broken database connections > Hi, > > how can I handle broken database connections. If I shut down the database > and restart it, you could use the 'validationQuery' attribute within the connection-pool element to check connection before it could be obtained from pool. currently we don't have a 'refresh()' method on ConnectionFactory level to allow the implementation class to refresh their connection pool - if con-pooling was supported. Would such a 'refresh' method make sense? regards, Armin > I get following errormessage occure: > > [org.apache.ojb.broker.accesslayer.JdbcAccessImpl] ERROR: > PersistenceBrokerException during > the execution of the query: > Io exception: Connection reset by peer: socket write error Io exception: > Connection reset by peer: socket write error > java.sql.SQLException: Io exception: Connection reset by peer: socket write > error > > My current configuration is > java 1.4.1 > ojb 1.0 rc2 > > Thanks in advance > Reinhard > > > > ======================================================================== ==== > ========== > Reinhard Dunst > T.U.B. Technologie- & Unternehmensberatung GmbH > > mobile: +43.664 - 2525928 > email: mailto:[EMAIL PROTECTED] > ======================================================================== ==== > ========== > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]