So right, if I understand you, we have Object foo. VM A. and VM B. In VM A local transients are attached to foo. And likewise in VM B. If/when Object foo leaves/comes back to VM A, its local transients are restored (so foo gets the transients for foo from the transient pool in VM A). And likewise in VM B, but when foo is on VM B it gets the local transients from the local transient pool in VM B. The thing to note is that the local pool in VM B is just that - local to VM B and likewise for VM A.
The only problem I see with this is garbage - when / how do local transients get cleaned up? A soft reference might not be enough, since an application might expect that the object and its transients stick around. But if the object gets flushed, and the transients ultimately get flushed (if they are soft references, they might ultimately be a candidate for garbage) then when the object comes back, those transients are once again unexpectedly null. Of course hard references have the opposite problem - they never go away. ----- Original Message ----- From: "Tim Eck" <[EMAIL PROTECTED]> To: [email protected] Sent: Tuesday, April 1, 2008 2:07:49 PM (GMT-0800) America/Los_Angeles Subject: Re: [tc-dev] I was thinking This is probably just a clarification, but I think this new behaviour wouldn't just apply on the VM where objects were first created. Any place a shared object migrates, its [local] transients will survive between a flush/fault cycle. > -----Original Message----- > From: [EMAIL PROTECTED] [mailto:tc-dev- > [EMAIL PROTECTED] On Behalf Of Orion Letizi > Sent: Tuesday, April 01, 2008 1:30 PM > To: [email protected] > Subject: Re: [tc-dev] I was thinking > > Sounds good to me. It'll be a lot less surprising for people who > don't expect their objects to disappear from the JVM they created it on. > > --Orion > > On Apr 1, 2008, at 1:23 PM, Steven Harris wrote: > > about transients. One thing we can do to simplify things a bit is to > > have a concept of a locally cached transient. What does this mean? > > This means that when a something is marked as a "Terracotta Transient" > > they can specify whether they want the transient to be saved > > to a cache on object flush and reinserted on object fault. > > > > We can extend the concept to make the "Transient Cache" to hold onto > > that object until it is DGC'd in the server. > > Any thoughts? > > > > _______________________________________________ > > tc-dev mailing list > > [email protected] > > http://lists.terracotta.org/mailman/listinfo/tc-dev > > _______________________________________________ > tc-dev mailing list > [email protected] > http://lists.terracotta.org/mailman/listinfo/tc-dev _______________________________________________ tc-dev mailing list [email protected] http://lists.terracotta.org/mailman/listinfo/tc-dev
_______________________________________________ tc-dev mailing list [email protected] http://lists.terracotta.org/mailman/listinfo/tc-dev
