Previously Michael Bayer wrote:
> On Feb 26, 2009, at 8:21 AM, Wichert Akkerman wrote:
> > What happens if you do not call expunge on it, but pickle the object  
> > in a
> > cache, load it later and then merge it?
> 
> the state of the newly unpickled object, that is the current value of  
> its mapped attributes, would be merged with the persistent version in  
> the session.  merge() will load the object from the database into an  
> in-session, persistent instance before merging the external state.      
> because your unpickled instance never actually enters the session,  
> conflicts with its previous session or an already present in-session  
> object are nicely avoided.

I actually skip that and invalidate the cache entry on changes to
prevent that SQL hit. What I meant was: does it matter if you never
explicitly call expunge?

Wichert.

-- 
Wichert Akkerman <wich...@wiggy.net>    It is simple to make things.
http://www.wiggy.net/                   It is hard to make things simple.

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to sqlalchemy@googlegroups.com
To unsubscribe from this group, send email to 
sqlalchemy+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to