• Kirill Smelkov's avatar
    go/zodb: Prevent newly-created not-yet committed objects to go to ghost on deactivate · bb618ce1
    Kirill Smelkov authored
    When object is just created, it is not yet assigned an OID, but can be
    reachable from other objects. The code that processes transaction can
    reach to that new object and try to PActivate/PDeactivate it. And
    currently PDeactivate will drop the object state completely.
    
    Another example of object without an OID is Bucket embedded into a Tree
    object. There, the code that scans the tree can reach to that bucket and
    try to activate/deactivate it, leading, again, to dropping state of that bucket.
    
    -> Fix it.
    bb618ce1
persistent_test.go 23 KB