[Checkins] [zopefoundation/persistent] ff6486: Stop calling gc.collect in the Python incrgc.
GitHub
noreply at github.com
Mon Dec 19 17:48:47 CET 2016
Branch: refs/heads/new_ghost_doesnt_clear_newargs
Home: https://github.com/zopefoundation/persistent
Commit: ff64867cca3179b1a6379c93b6ef90db565da36c
https://github.com/zopefoundation/persistent/commit/ff64867cca3179b1a6379c93b6ef90db565da36c
Author: Jason Madden <jamadden at gmail.com>
Date: 2016-12-19 (Mon, 19 Dec 2016)
Changed paths:
M CHANGES.rst
M persistent/picklecache.py
M persistent/tests/test_picklecache.py
Log Message:
-----------
Stop calling gc.collect in the Python incrgc.
@jimfulton and I have talked about it, and I'm (mostly :) convinced that
this shouldn't be an actual problem for any of the reasons described in
the previous comment.
If I use PyPy 5.4.1 to run the ZODB master test suite against
this (well, with #44 rolled back) I don't get any unexpected
failures. (I haven't run the ZEO test suite yet.) Which honestly amazes
me because I'm sure I used to get test failures---I guess the PyPy GC
has changed...which means we may see some failures on Travis. I'll try
to set up an older PyPy to verify.
Commit: 930088adfcfa9530c0dd8f5c0c2c1dc970f26416
https://github.com/zopefoundation/persistent/commit/930088adfcfa9530c0dd8f5c0c2c1dc970f26416
Author: Jason Madden <jamadden at gmail.com>
Date: 2016-12-19 (Mon, 19 Dec 2016)
Changed paths:
M persistent/persistence.py
M persistent/picklecache.py
Log Message:
-----------
new_ghost doesn't clear object state, preserving __getnewargs__ values.
Commit: d03760b3bb33ae5a703aa1ae181336d28474833e
https://github.com/zopefoundation/persistent/commit/d03760b3bb33ae5a703aa1ae181336d28474833e
Author: Jason Madden <jamadden at gmail.com>
Date: 2016-12-19 (Mon, 19 Dec 2016)
Changed paths:
M persistent/picklecache.py
M persistent/tests/test_persistence.py
M persistent/tests/test_picklecache.py
Log Message:
-----------
Don't clear the slots/dict when adding a new_ghost to Python
PickleCache.
Fixes #49.
Unfortunately, this doesn't fix the whole problem, because
_p_deactivate() still clears them, and so we lose what we set in __new__.
Commit: c6e818dbc20e7b3a5cef55515af9fcc9500bedf0
https://github.com/zopefoundation/persistent/commit/c6e818dbc20e7b3a5cef55515af9fcc9500bedf0
Author: Jason Madden <jamadden at gmail.com>
Date: 2016-12-19 (Mon, 19 Dec 2016)
Changed paths:
M .gitignore
M CHANGES.rst
M persistent/persistence.py
Log Message:
-----------
change note
Compare: https://github.com/zopefoundation/persistent/compare/76593305679a...c6e818dbc20e
More information about the checkins
mailing list