Hello!

On Thu, May 23, 2013 at 01:48:42PM +0400, Oleg Broytman <p...@phdru.name> wrote:
> On Wed, May 22, 2013 at 06:16:20PM -0600, Andrew Trusty <atru...@gatech.edu> 
> wrote:
> > I think you just answered how the bug I reported off-list occurred but I
> > was asking about the patch from revision 4530 to 4531 (when the "Cannot
> > unpickle" ValueError was first introduced) that fixed a bug relating to
> > unpickling.
> > 
> > > http://sourceforge.net/mailarchive/forum.php?thread_name=E1SXzWF-0005Cg-9K%40webwareforpython.org&forum_name=sqlobject-cvs
> > >    The last line was not changed but id was removed from the code, that
> > > how the last line became broken.
> 
>    I think the idea is to prevent getting two rows with the same id via
> SELECT and unpickling.

   I fixed the problem but it required much more than just fixing an
issue with self.id. The worse problem was that every SQLObject instance
has a weak proxy to itself and pickling does strange things -- it calls
__getstate__ twice on pickling and calls __setstate__ twice on
unpickling. The second call to __setstate__  is certainly a source of
problems with cache.
   Perhaps it's a bug in Python, I'm not sure. I fixed the problem by
avoiding pickling the weak proxy and restoring the proxy on unpickling.
Committed in the revisions 4601, 4602 (branch 1.3), 4603 (1.4), 4604
(the trunk). I will do releases in a few hours.
   Thank you very much for helping to find and fix he problems!

Oleg.
-- 
     Oleg Broytman            http://phdru.name/            p...@phdru.name
           Programmers don't die, they just GOSUB without RETURN.

------------------------------------------------------------------------------
Try New Relic Now & We'll Send You this Cool Shirt
New Relic is the only SaaS-based application performance monitoring service 
that delivers powerful full stack analytics. Optimize and monitor your
browser, app, & servers with just a few lines of code. Try New Relic
and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_may
_______________________________________________
sqlobject-discuss mailing list
sqlobject-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sqlobject-discuss

Reply via email to