db-jdo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jörg von Frantzius <joerg.von.frantz...@artnology.com>
Subject Re: Clarifications on fetch depth
Date Thu, 15 Dec 2005 23:00:17 GMT
Hallo Marko,

von Alexander habe ich vorhin gehört, daß Ihr Detaching ebenfalls zum 
Synchronisieren von Datenbanken benutzt. Das tue ich ebenfalls, und es 
funktioniert prima mit dem aktuellen Stand der Spezifikation und von 
JPOX. Und vor allem funktioniert es, ohne daß mein Code wissen muß, 
welche Klasse ein Objekt hat, und mit ein und dem selben 
Fetch-Group-Namen, mit dem für alle Klassen eine Fetch-Group definiert ist.

Bitte erkläre mir mal, wie ich ein beliebiges Objekt mit genau Tiefe 1 
detachen kann (also das Objekt selbst, und alles was von diesem direkt 
erreichbar ist), wenn ich keine Fetch-Depth für *alle* Felder definieren 
kann?

Wir können deswegen gerne mal morgen telefonieren, dann gibt's da glaube 
ich weniger Mißverständnisse. Meine Telefonnummer findest Du unten.

Grüße,
Jörg

Grüße,
J-rg

Marco Schulze schrieb:
> Alexander Bieber wrote:
>
>> In my oppinion it would be better to change the spec back to its 
>> previous version, so that fetch-depth applies only to 
>> self-referencing (=recursive) fields (direct _and_ indirect). A hard 
>> limit could be set on detachCopy with an additional parameter 
>> detachDepth that will apply to the object graph of the top-level 
>> object that is detached.
>
> Hello all!
>
> I totally agree that the new behaviour not only makes life more 
> complicated, but implies design problems as well, and that a change 
> back to the old behaviour would be very helpful. But instead of a new 
> parameter for the detachCopy method, I'd like to mention a possible 
> alternative: a getter-setter-pair for the fetchplan:
>
>    PersistenceManager.getFetchPlan().getMaxFetchDepth();
>    PersistenceManager.getFetchPlan().setMaxFetchDepth(mfd);
>
> This maximum fetch-depth should be relative to the root of the object 
> graph, while the fetch-depth declared per field only applies to 
> relative self-referencing - i.e. recursion (= old behaviour).
>
> IMHO both, detachCopy derivate or fetchplan property, are adequate. 
> But the new behaviour of fetch-groups is not logical, because the 
> definition of a fetch-group happens per field/class while its effects 
> depend on the use-case. IMHO, parameters that apply to the use-case 
> should be defined runtime (i.e. parameter/getter-setter) while static 
> definitions should be usecase-independent. I hope, you understand what 
> I mean...
>
> Any other opinions?
>
> Best regards, Marco.
>
>


-- 
__________________________________________________________
Dipl.-Inf. Jörg von Frantzius  |            artnology GmbH
                               |                Milastr. 4
Tel +49 (0)30 4435 099 26      |              10437 Berlin
Fax +49 (0)30 4435 099 99      |  http://www.artnology.com
_______________________________|__________________________


Mime
View raw message