thanx for diving into this bug, >What I don't understand is how you could find the leak, because the >intention of 'per-thread-changes' use is *not* to copy the repository >for each call/thread, rather to manage a bunch of different repositories >(e.g. by using MetadataManager#addProfile/loadProfile... methods).
>Why you need a 'fresh'copy for each thread/call? Could be a performance >problem - maybe I misinterpret your needs. for every persistence operation (query/store/delete/etc...) we instantiate a new persistence broker, to my knowledgde, this is supposed to be common practice. in our webapp we inplemented a relation service that manages relations between objects. a relation is of a certain relationtype has references to the related objects, these references are by object id. relations can be of many different types, and thus may have references to many different types of objects. we may query our objects on attributes of related objects, so every Linkable (a marker interface) object implements a collection links/relations, which contains a collection of related objects. it is not scalable to implement a new collection for every new relation type, or for every new linkable target object class. we are going to have many of these, it just is not managable (in java-classes, in O/R repositories etc.). So each Linkable class implements one links/relations collection, which has a 'dummy' mapping in the O/R repository file. Runtime, dynamically, this mapping is modified and set to the correct references, because for instance when issuing a query, we know what class and link references to use. This may change for every query! So this is why we copy the repository every time. Hope this gives you some insight in how we use this feature. thanx again, Roger Janssen ************************************************************************* The information contained in this communication is confidential and is intended solely for the use of the individual or entity to whom it is addressed.You should not copy, disclose or distribute this communication without the authority of iBanx bv. iBanx bv is neither liable for the proper and complete transmission of the information has been maintained nor that the communication is free of viruses, interceptions or interference. If you are not the intended recipient of this communication please return the communication to the sender and delete and destroy all copies. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
