[Checkins] [zopefoundation/persistent] 3c7eae: Use ffi.gc() on the ring nodes to avoid needing a ...

Jason Madden noreply at github.com
Tue Mar 3 22:17:43 CET 2020


  Branch: refs/heads/issue133
  Home:   https://github.com/zopefoundation/persistent
  Commit: 3c7eaeca99399c2efa623890dc009749c6b61cb9
      https://github.com/zopefoundation/persistent/commit/3c7eaeca99399c2efa623890dc009749c6b61cb9
  Author: Jason Madden <jamadden at gmail.com>
  Date:   2020-03-03 (Tue, 03 Mar 2020)

  Changed paths:
    M persistent/_ring_build.py
    M persistent/cPersistence.h
    M persistent/persistence.py
    M persistent/picklecache.py
    M persistent/ring.c
    M persistent/ring.h
    M persistent/ring.py
    M persistent/tests/test_picklecache.py
    M persistent/tests/test_ring.py

  Log Message:
  -----------
  Use ffi.gc() on the ring nodes to avoid needing a weakref to Persistent objects.

Fixes #133.

But there's a bug right now, this currently crashes on PyPy on my machine with malloc use-after-free errors (or segfaults, depending on if GC is run explicitly).

So lifetime management is not yet correct.




More information about the checkins mailing list