Hi, I have some problems with OOBTrees and the persistence machinery - I think. My situation is following: a class has an attribute 'pkgDB', which is an OOBTree. When I assign a value to a key ( e.g. pkgDB['key'] = 'value' ) in a function call, then the value is set. When I know restart Zope, the value is still there - as I expected it to be. Now, when I assign another OOBTree as a value to the first tree ( pkgDB['key'] = OOBTree() ) I can also assign values to the tree and see the values in later transactions, so it gets committed correctly. But when I know restart zope, the changes made to the OOBTree seem to be lost. So I think the ZODB doesn't recognize the change to the embedded OOBTree. The same is also with PersistentMapping. Regards Christian -- Christian Theune - ct@gocept.com gocept gmbh & co.kg - schalaunische strasse 6 - 06366 koethen/anhalt tel.+49 3496 3099112 - fax.+49 3496 3099118 mob. - 0178 48 33 981 reduce(lambda x,y:x+y,[chr(ord(x)^42) for x in 'zS^BED\nX_FOY\x0b'])