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