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

Reply via email to