Hello! Starting with version 3.2.2, Wt::Dbo throws strange exception "circular dependency detected".
1. What is wrong with circular dependency in database? There are a lot of examples, when it is needed. 2. Circular dependency is not equal to one-to-one relastion. For example, *A -> B, B -> C, C -> A*. Or *A -> A*. These cases can not be implemented using weak_ptr (according to its doc). How can they be implemented? 3. I am not using nor one-to-one neither weak_ptr. But I got the exception "circular dependency detected" thrown. (My objects are not related like *A -> B, B -> C, C -> A* or *A -> A*.) Currently, all I can to do to work around this exception is modifying Wt's source to remove it. 4. Why circular dependency is a problem for Dbo objects in memory? I mean, what will Wt::Dbo do, if object A refers using dbo::ptr object B, while object B refers A with dbo::ptr. And no other ptr refers these objects. Does it mean memory leak (at least, in current dbo::Session)? Can dbo unload object with non-null reference-count? I think, Wt::Dbo should behave as memory manager: longly unused objects go to swap (i.e. to database, ptr.flush() && ptr.purge()). Because of lazy loading, this can be done. In this case circular dependency would not be a problem. Could you implement it, please? PS. I failed to post this to bug tracker (error 500), so sendind it here. ------------------------------------------------------------------------------ Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ _______________________________________________ witty-interest mailing list witty-interest@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/witty-interest