-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 David Binger wrote: > Okay. I'll add those two to Storage. Thanks. > It sounds like you are implementing a Storage. > That's good. Nice. Yes, I'm implementing a BerkeleyDB backend storage. A family of storages, actually. I'm just finishing my first member of the family. It is a full featured storage with a *IMPORTANT* caveat: the persistent structure MUST BE a tree. That is, each element can only have a parent. This is a limitation I impose to simplify garbage collection. In a tree each node can only have a parent. So, if that link is deleted a no other link is stablished in the same transaction, you can safety remove that node and its childs. A tree can't have cycles, either. I know that a tree can be a limiting factor, although I don't need a general graph in my current applications (a mailbox storage pool). In fact you can use "weak" links to create a general graph, if you use the name of a node instead of its OID and explicitally check for existence in your aplication. In any case, I plan to do a full garbage collection implementation in the future. I have several small issues, nevertheless. For example, objects come to the storage engine already serialized. I would rather prefer to do the serialization myself. I don't need, for example, to keep the first eight bytes of the object in the database, since that is the OID and I already have the OID as the database key. Could those storage engines be included in future Durus releases or must I to create a "contribution" webpage in my personal site?. - -- Jesus Cea Avion _/_/ _/_/_/ _/_/_/ jcea@argo.es http://www.argo.es/~jcea/ _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ _/_/_/_/_/ PGP Key Available at KeyServ _/_/ _/_/ _/_/ _/_/ _/_/ "Things are not so easy" _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ "My name is Dump, Core Dump" _/_/_/ _/_/_/ _/_/ _/_/ "El amor es poner tu felicidad en la felicidad de otro" - Leibniz -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2.2 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iQCVAwUBRBXvsJlgi5GaxT1NAQK9jQP/S1kXP9DZOjuxHkMYN9Y6ASDoiYVtPvJH cKRKDA2Trd9VrVxtStUkkKoLKrQPU7TazVD80sFKilqFebnqwcHxJVrrw3fzYXnt yRRqXGWpjQKBLLz7kbDie40Wu8t9Q2abB+/gxe+nNnb+tc+3tfoPqI9ZCTyPym1e nwPn1Zj0UQo= =7g0r -----END PGP SIGNATURE-----