db-ojb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Armin Waibel <ar...@code-au-lait.de>
Subject Re: closing resources
Date Fri, 30 Jan 2004 09:48:05 GMT
Hi Sven,

Sven Efftinge wrote:
> Hi Armin,
> I found the strictness in closing used resources very problematic, 
> especially when using proxies.
> Since proxies should be transparent (and so the fact that in OJB a proxy 
> is associated to a persistencebroker)
> users normally wouldn't expect an error when doing the following:
> 
> PersistenceBroker broker = null;
> Persistent obj = null;
> try {
>      broker = PersistenceBrokerFactory.createPersistenceBroker(pbKey);
>      obj = broker.getObjectByIdentity(anIdentity);
> } finally {
>      broker.close();
> }
> obj.getReference().getFieldVal();
> 

hmm, this shouldn't cause any problems. If the actual PB instance was 
closed, the proxy internal try to obtain a new PB instance for object 
materialization.

OJB is only strict in handling DB resources in conjunction with 
Iterator. After a PB.close(), PB.commit/abortTransaction() the 
underlying connection was released (returned to pool or closed), thus we 
should take of resources used by RsIterator, because the will become 
invalid after listed PB method calls.

> I don't know if the problem occurs with references, 
> collection-references or both ??

A problem with automatic closed Iterator resoures shouldn't occur in 
conjunction with references.

> 
> Additionally the strictness is not that strict, because the error 
> doesn't occur always (only under stress?).
> So it is not easy to locate problematic code sequences.

Can you post me the stack trace of such an error? Maybe it's a "normal" 
error indicating that your resources are exhausted, e.g. connection-pool 
exhaust.

 > Couldn't we think about a different solution?
 >
What do you mean?

regards,
Armin

> regards,
> Sven
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: ojb-dev-unsubscribe@db.apache.org
> For additional commands, e-mail: ojb-dev-help@db.apache.org
> 
> 
> 



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


Mime
View raw message