Navgation and/or query approach (was Re: Flamewar object databases vs. relational databases)
Date: Sat, 21 Jul 2001 23:30:20 GMT
Message-ID: <3B1D5334.3662C4BD_at_toppoint.de>
Carl Rosenberger schrieb:
>
> ? ? ...by using WeakReferences for all "handed out" objects for instance.
>
> This refers to what the object database engine might use internally to keep
> track of objects.
Ok, but your application code held the root objects to start navigation and there you would not use weak references and because of this you still have this problem of building up a mirror of your database objects in memory over the time.
Therefore one must throw away parts of the object network in in regular (matter of time or application logic) way and build up the object network again and again via navigation. The garbage collector is not able to help you here, because of your root objects you have strong references to the object network.
Now consider a GUI with several windows possible showing the same object structure ... making things much more complicated.
We tried so solve this problem in a general way, but it was very, very difficult to decide when (application logic) one would like to refresh to whole object network and to rebuild it again.
Another problem is object identity and I decided not to be dependent on object identity in object memory. Therefore I may have too different objects representations of the same object at the same time.
Marten Received on Sun Jul 22 2001 - 01:30:20 CEST