[OJB 0.9.8ba] Hi,
I've come across a strange situation regarding extents, Identities and the cache. First, to clarify my understanding: Identities should contain the base class in 'objectClass' and the concrete class in 'realObjectClass'. This means that when comparing two Identities using equals() it will return true if 'objectClass' and the primary key(s) are the same. The concrete class is not compared. And now for the problem: when querying using getObjectByQuery() on an extent, the broker internally creates an Identity whose objectClass is the REAL class and not the extent class! Afterwards it tries looking up the cache using this Identity and fails. This leads to cache inconsistency because it then storfes the "new" object in the cache and thus we have two entities which are the same entities residing in the cache. I haven't had the time to take a closer look into the broker's code to understand exactly where and when it does that. Any ideas? Thanks, Tal -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
