You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ojb-user@db.apache.org by RB...@intersoft.de on 2003/07/23 16:57:41 UTC

Broker does not close?

Hi,

Even though the broker was closed we are able to make more requests???
Obwohl der Broker geschlossen wird, kann man weiter Abfragen stellen ???

<code snip>
  PersistenceBroker thePersistenceBroker = 
PersistenceBrokerFactory.createPersistenceBroker(
                    myProperties.getProperty("jcd.alias"),
                    myProperties.getProperty("user.name"),
                    myProperties.getProperty("password"));
            ConnectionManagerIF theConMan = 
thePersistenceBroker.serviceConnectionManager();
            JdbcConnectionDescriptor theConDesc = 
theConMan.getConnectionDescriptor();
            theConDesc.setDbAlias(myProperties.getProperty("dbalias"));
 

            Object theFirstObject = 
thePersistenceBroker.getObjectByQuery(getQuery(123));
            System.out.println("erste Abfrage: " + theFirstObject);

            assertTrue("Broker nicht geschlossen! ", 
thePersistenceBroker.close());
            Thread.sleep(30 * 1000);
            thePersistenceBroker.beginTransaction();
            Object theSecondObject = 
thePersistenceBroker.getObjectByQuery(getQuery(123));
 
            System.out.println("zweite Abfrage: " + theSecondObject);
</code snip> 

Das Ergebnis:
the result is:

<result>
[org.apache.ojb.broker.metadata.ConnectionRepository] INFO: Automatic 
create of new jdbc-connection-descriptor for PBKey 
org.apache.ojb.broker.PBKey: repository=defaultOracle, user=persil_d3, 
password=*****
[org.apache.ojb.broker.accesslayer.ConnectionFactoryPooledImpl] INFO: 
Create new connection 
pool:org.apache.ojb.broker.metadata.JdbcConnectionDescriptor@5f8b99[
  jcd-alias=defaultOracle
  default-connection=false
  dbms=Oracle
  jdbc-level=2.0
  driver=oracle.jdbc.driver.OracleDriver
  protocol=jdbc
  sub-protocol=oracle
  db-alias=thin:@192.168.11.11:1521:divaora
  user=persil_d3
  password=*****
  eager-release=false
  ConnectionPoolDescriptor={testOnReturn=false, maxWait=5000, 
timeBetweenEvictionRunsMillis=2000, testOnBorrow=true, 
numTestsPerEvictionRun=10, maxActive=100, removeAbandonedTimeout=300, 
removeAbandoned=false, maxIdle=10, testWhileIdle=false, 
whenExhaustedAction=2, logAbandoned=false, 
minEvictableIdleTimeMillis=4000}
  batchMode=false
  useAutoCommit=AUTO_COMMIT_SET_FALSE
  ignoreAutoCommitExceptions=true
  sequenceDescriptor=<null>
]
erste Abfrage: 
de.intersoft.persil.model.business.persistence.ConcurrentAccount_OJB{myBLZ=123, 
myNR=13, myName='RalfM', myBetrag=0}
[org.apache.ojb.broker.accesslayer.ConnectionFactoryPooledImpl] INFO: 
Destroy object was called, try to close connection: 
oracle.jdbc.driver.OracleConnection@27508a
zweite Abfrage: 
de.intersoft.persil.model.business.persistence.ConcurrentAccount_OJB{myBLZ=123, 
myNR=13, myName='RalfM', myBetrag=0}

Time: 33,093

OK (1 test)
</result>


Maybe we are using the PB wrong ???


With finest regards,
Mit freundlichen Grüßen,

Ralf Baron-Riege


___________________________________
intersoft AG, Hamburg
E-Mail: RBaron-Riege@intersoft.de
http://www.intersoft.de
Fon +49 40 80 81 08 - 224
Fax +49 40 80 81 08 - 141

Re: Broker does not close?

Posted by Armin Waibel <ar...@code-au-lait.de>.
Hi Ralf,

----- Original Message -----
From: <RB...@intersoft.de>
To: <oj...@db.apache.org>
Sent: Wednesday, July 23, 2003 4:57 PM
Subject: Broker does not close?


Hi,

Even though the broker was closed we are able to make more requests???
Obwohl der Broker geschlossen wird, kann man weiter Abfragen stellen ???
######

yes, you are right. Until now we assume that the user
does no longer use a closed PB instance - naive of course ;-)
We changed that behaviour, check out latest from CVS. Now
you only operate on a PB handle, when call PB.close()
the handle was destroyed and the underlying pooled PB instance
was returned to pool.

regards,
Armin

P.S.: danke für die Übersetzung, bei meinem Englisch bin ich
für jede Hilfe dankbar. Leider muß ich dir in (einer Art) Englisch
antworten, da die meisten Leute auf der Liste (aus unerfindlichen
Gründen) kein Deutsch verstehen ;-)

<code snip>
  PersistenceBroker thePersistenceBroker =
PersistenceBrokerFactory.createPersistenceBroker(
                    myProperties.getProperty("jcd.alias"),
                    myProperties.getProperty("user.name"),
                    myProperties.getProperty("password"));
            ConnectionManagerIF theConMan =
thePersistenceBroker.serviceConnectionManager();
            JdbcConnectionDescriptor theConDesc =
theConMan.getConnectionDescriptor();
            theConDesc.setDbAlias(myProperties.getProperty("dbalias"));


            Object theFirstObject =
thePersistenceBroker.getObjectByQuery(getQuery(123));
            System.out.println("erste Abfrage: " + theFirstObject);

            assertTrue("Broker nicht geschlossen! ",
thePersistenceBroker.close());
            Thread.sleep(30 * 1000);
            thePersistenceBroker.beginTransaction();
            Object theSecondObject =
thePersistenceBroker.getObjectByQuery(getQuery(123));

            System.out.println("zweite Abfrage: " + theSecondObject);
</code snip>

Das Ergebnis:
the result is:

<result>
[org.apache.ojb.broker.metadata.ConnectionRepository] INFO: Automatic
create of new jdbc-connection-descriptor for PBKey
org.apache.ojb.broker.PBKey: repository=defaultOracle, user=persil_d3,
password=*****
[org.apache.ojb.broker.accesslayer.ConnectionFactoryPooledImpl] INFO:
Create new connection
pool:org.apache.ojb.broker.metadata.JdbcConnectionDescriptor@5f8b99[
  jcd-alias=defaultOracle
  default-connection=false
  dbms=Oracle
  jdbc-level=2.0
  driver=oracle.jdbc.driver.OracleDriver
  protocol=jdbc
  sub-protocol=oracle
  db-alias=thin:@192.168.11.11:1521:divaora
  user=persil_d3
  password=*****
  eager-release=false
  ConnectionPoolDescriptor={testOnReturn=false, maxWait=5000,
timeBetweenEvictionRunsMillis=2000, testOnBorrow=true,
numTestsPerEvictionRun=10, maxActive=100, removeAbandonedTimeout=300,
removeAbandoned=false, maxIdle=10, testWhileIdle=false,
whenExhaustedAction=2, logAbandoned=false,
minEvictableIdleTimeMillis=4000}
  batchMode=false
  useAutoCommit=AUTO_COMMIT_SET_FALSE
  ignoreAutoCommitExceptions=true
  sequenceDescriptor=<null>
]
erste Abfrage:
de.intersoft.persil.model.business.persistence.ConcurrentAccount_OJB{myB
LZ=123,
myNR=13, myName='RalfM', myBetrag=0}
[org.apache.ojb.broker.accesslayer.ConnectionFactoryPooledImpl] INFO:
Destroy object was called, try to close connection:
oracle.jdbc.driver.OracleConnection@27508a
zweite Abfrage:
de.intersoft.persil.model.business.persistence.ConcurrentAccount_OJB{myB
LZ=123,
myNR=13, myName='RalfM', myBetrag=0}

Time: 33,093

OK (1 test)
</result>


Maybe we are using the PB wrong ???


With finest regards,
Mit freundlichen Grüßen,

Ralf Baron-Riege


___________________________________
intersoft AG, Hamburg
E-Mail: RBaron-Riege@intersoft.de
http://www.intersoft.de
Fon +49 40 80 81 08 - 224
Fax +49 40 80 81 08 - 141



---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org