I've tried turning the cache off but I get other transactional and locking weirdness. I'm testing the effects of setting a low time limit right now.
Also, is Castor/JDO even supported by Intalio any more? A member of my dev team received an email from someone at Intalio saying that they had a commercial product that superceded Castor. If that is the case, then I'll almost be forced to abandon using Castor for my project. --Kevin -----Original Message----- From: Ned Wolpert [mailto:[EMAIL PROTECTED]] Sent: Wednesday, March 13, 2002 1:16 PM To: [EMAIL PROTECTED] Subject: Re: [castor-dev] Aging and the LRU/Dirty Check cache Kevin- The issue is that objects that are not in a transaction will timeout when using a time-limited cache option. If in the last second they are used for a transaction (even if rolled back I believe) then the time to flush is reset... which is likely the reason you see this behavior. The cache-flush technique you posted is a good first attempt at flushing the cache, but you're correct that its incomplete. The cache mechanism needs to be 'aware' of the object in use for it to be expired. More specifically, the object needs to be tracked while its pulled from the cache and re-inserted into the cache. If a 'flush' occurred during the transaction, the object needs to be caught and not inserted into the cache. Obviously, this is more than a 5 min hack, but it does seem to be a doable procedure. Since you need to be aware of database changes quickly that occur outside of your application, you really have only two options; set the timeout to be 30 seconds, which may cause other strange behavior, or turn the cache off. You can turn the cache off for the specific objects that can be modified outside of your application, and keep cache on for everything else so that they get the speed benefit from the LRU cache. On Wed, 2002-03-13 at 09:12, Smith, Kevin wrote: > All - > > Has anyone seen an object actually age out of the cache and get refreshed > from the database? If I read the online documentation correctly, this should > happen at some point. In my case, I'm using a time-limited cache with a > limit of 10 sec. My understanding is that if I wait > 10 sec to do a query, > I should get an object whose contents represents that of the database and > not the cache (because the cache entry has been flushed). I'm not seeing > that at all. > > I've tried using the cache flush hack I posted to the list a few days ago, > but I'm running into transaction management issues which are beyond my > knowledge of the Castor source. > > Any ideas? > > --Kevin > > ----------------------------------------------------------- > If you wish to unsubscribe from this mailing, send mail to > [EMAIL PROTECTED] with a subject of: > unsubscribe castor-dev -- Virtually, Ned Wolpert <[EMAIL PROTECTED]> D08C2F45: 28E7 56CB 58AC C622 5A51 3C42 8B2B 2739 D08C 2F45 ----------------------------------------------------------- If you wish to unsubscribe from this mailing, send mail to [EMAIL PROTECTED] with a subject of: unsubscribe castor-dev
