Just try it out and run the junit test suite against it ! I expect problems only for tests relying on object uniqueness and lookup of cyclic object graphs.
cheers, Thomas > -----Urspr�ngliche Nachricht----- > Von: Max Rydahl Andersen [mailto:[EMAIL PROTECTED]] > Gesendet: Donnerstag, 12. September 2002 13:36 > An: [EMAIL PROTECTED] > Betreff: Thought experiment... > > > What would happen if I implemented an AlwaysEmptyCache ? (to > circumvent the > problems of the single instance cache problem) > > Here are my thoughts on the advantages of an ordinary cache > mentioned on > http://jakarta.apache.org/ojb/objectcache.html : > > "it increases performance as it reduces database lookups. If > an object is > looked up by the PersistenceBroker, it does not perform a > SELECT against the > database immediately but first looks up the cache if the > requested object is > already loaded. If the object is cached it is returned as the > lookup result. > If it is not cached a SELECT is performed." > > If I need this performance, I could just implement a > usercontrolled cache > for the specific performance problem. > And this performance gains is only happening if one is trying > to lookup via > primary keys... > > "it maintains the uniqueness of objects. If several queries ask for an > object with the same Identity (OID) they will receive one and the same > object from the cache. This will prevent your applications > from working with > divergent copies of objects with the same Identity." > > ...but a single cache does not prevent my application threads > messing up > each others work (actually it will happen at some point!) > > ...secondly, uniqueness is not always guaranteed (according > to previous > posts) and then one cannot write code under this assumption anyway! > > "it allows to perform circular lookups (as by crossreferenced > objects) that > would result in non-terminating loops without such a cache." > > ...is not happening if you do use autoretreive (which I > cannot see the usage > for in databases with big object-nets/graph) > > > Any other comments ? > > /max > > > > > > -- > To unsubscribe, e-mail: > <mailto:[EMAIL PROTECTED]> > For additional commands, e-mail: > <mailto:[EMAIL PROTECTED]> > -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
