Hi the JDO developer community and user community! -I have invented a new declarative method to update object databases and I would like to introduce that method you.
My question is: Should the functionality of this method included in some future versions of JDO (and perhaps some other definitions/systems under Apache)? Also I am interested about your comments/critique on the method. The name of the method is "embed" and it resembles the command pm.makePersistent(s); used in JDO-enabled applications. The embed method is called in equivalent way, db.embed(s); but it has a larger functionality than the current makePersistent method. The embed method does not only store or update the content of object structure (graph) s into the object database (persistence-by-reachability) but it also removes possible garbage objects automatically from the object database if those appear during an update operation. The embed method, its implementation, requires some natural properties from the object database. Persistence in the object database is defined by reachability from persistent root objects in the database. The embed method applies well known reference count techniques. Therefore the nodes (objects) in the database have one field for incoming references and also one field which defines if a node is a persistent root node (object). The method is efficient, because it works locally in the database; it understands local topology of the database and examines only related objects in the object database, not the whole database which would not be acceptable. The method works with quite general conditions because it models both the object database and the modified object structure s in the run-time memory as directed graphs of nodes or objects without any artificial limitations. For example different kinds of circular substructures and their modifications are allowed. The method relies an a general communication theory (as I call it at a moment..) which states that modified complex information represented as directed graph of nodes can always be transferred back to its original system in an exact and meaningful way, which includes garbage collection. I have written a blog about the embed method and related things, and I put the same content in arXiv. http://hvirkkun.blogspot.fi/2016/04/a-new-communication-theory-on-complex.html -Comments and critique are welcome. Best Regards, Heikki Virkkunen Email: [email protected] Phone: +358 40 706 3912
