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: [IMPORTANT] Fetch-depth
Date Tue, 17 Jan 2006 17:01:56 GMT
Hi Craig,

did you get the mail to you personally where I described it? Maybe I 
ended up in you spam-filter or something...

Regards,
Jörg

Craig L Russell schrieb:
> Hi 
>
> Yes, I'm interested in this use-case in detail. I'm still open to an 
> absolute fetch-depth if there is a need for it.
>
> Thanks,
>
> Craig
>
> On Jan 16, 2006, at 8:13 AM, Jörg von Frantzius wrote:
>
>> Thank you Alexander, I hadn't been watching!
>>
>> Alexander Bieber schrieb:
>>> Thanks Craig for taking our arguments into account.
>>> I'll still have a comment concerning the use case Jörg von Frantzuis 
>>> submitted. His case is to limit the object-plan depth to a certain 
>>> level while using FetchPlan.ALL as fetch-group. This is used for 
>>> synchronizing data between datastores generically. In my oppinion we 
>>> should think of an additional and optional (defaulting to -1) 
>>> parameter to detachCopy - detachDepth - for this case.
>> If fetch-depth is meant to limit recursion (or if it would more 
>> accurately be renamed to "recursion-depth", see below), then there 
>> would be no way anymore of determining the fetch-depth absolutely 
>> when detaching. As Alexander said, my usecase depends on that and my 
>> code would break. If anyone is interested to know why synchronizing 
>> two different databases in a generic way depends on that, then I'll 
>> be happy to elaborate further.
>>
>> I'd be equally happy with a fetchDepth parameter to PM.detachCopy(), 
>> as Alexander proposes.
>>>
>>> Best regards
>>>
>>> Alexander Bieber
>>>
>>>
>>> Craig L Russell wrote:
>>>
>>>> Javadogs,
>>>>
>>>> I've spent some time looking at the semantics of fetch-depth and 
>>>> now agree with the critics of the change that I proposed back in 
>>>> the infamous October 1, 2005 message to the expert group subject: 
>>>> *Re: JDO2 §12.7.2: fetch-depth only for "recursive fetch group 
>>>> references"?*.
>>>>
>>>> I now believe it's impractical to use fetch-depth to mean the 
>>>> maximum depth of the object graph reachable from the root object(s) 
>>>> field because of several messages sent on the subject by Joerg von 
>>>> Frantzuis, Alexander Bieber, and Marco Schultz.
>>>>
>>>> Briefly, the argument is that if fetch-depth limits the number 
>>>> absolutely, then it's not possible easily to use the fetch-group to 
>>>> add another field to a fetch plan simply by adding a fetch-group 
>>>> that includes that field. Instead, a new fetch-group that changes 
>>>> the fetch-depth must be used. And each new use-case needs to 
>>>> provide a different fetch-depth number if another level of fetching 
>>>> is desired.
>>>>
>>>> I believe that the use of fetch-group to determine whether fields 
>>>> (navigating relationships) are fetched should be natural, and that 
>>>> we should therefore use fetch-depth for its original purpose of 
>>>> limiting recursion.
>> Two remarks if we want to limit recursion:
>>
>>   1. It shouldn't be called "fetch-depth" but "recursion-depth",
>>      because that's what it is then (it does not determine the actual
>>      number of fetches!)
>>   2. It should be clearly defined what kind of recursion is meant here,
>>      i.e. by class or by object. I remember it being agreed that by
>>      object is the most useful.
>>
>>>>
>>>> If you disagree with this position, please reply so we can move 
>>>> forward and define the use of fetch-depth for recursion (as in the 
>>>> original semantics of the attribute).
>>>>
>>>> Thanks,
>>>>
>>>> Craig
>>>>
>>>> Craig Russell
>>>>
>>>> Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
>>>>
>>>> 408 276-5638 mailto:Craig.Russell@sun.com
>>>>
>>>> P.S. A good JDO? O, Gasp!
>>>>
>>>>
>>>
>>>
>>
>>
>> -- 
>> __________________________________________________________
>> 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
>> _______________________________|__________________________
>>
>
> Craig Russell
>
> Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
>
> 408 276-5638 mailto:Craig.Russell@sun.com
>
> P.S. A good JDO? O, Gasp!
>
>


-- 
__________________________________________________________
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
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message