Thanks, Ralf. I actually didn't think of looking there.

Anyhow, Lukas, can you please try to copy the relevant bits and pieces
to the HTML docs, and to describe the available mechanism in this area
from a user's point of view.

This would be very nice, indeed.

Werner

Ralf Joachim wrote:
> Only in release notes of 1.3rc1.
> 
> Werner Guttmann schrieb:
>> Great. I thought this still was progress in work. Where in the JDO
>> documentation can I (we) find information about this ?
>>
>> Werner
>>
>> Ralf Joachim wrote:
>>   
>>> Hi Lukas, Werner,
>>>
>>> see my comment inline.
>>>
>>> Werner Guttmann schrieb:
>>>     
>>>> Hi,
>>>>
>>>> sure. Basically, when you start a transaction with Castor JDO using
>>>> database.begin(), internally a new TransactionContext instance will be
>>>> created. This is used to track the various user activities of this
>>>> transaction, e.g. creates, loads, ..... In Hibernate, this information
>>>> pockets associated with the TransactionContext are called '1st level 
>>>> cache'.
>>>>
>>>> Once a commit is issued, the information maintained within this
>>>> TransactionContext is used to prepare the various SQL statements
>>>> required to update the data in the persistence store, i.e. for example
>>>> store the new created objects in the persistence store.
>>>>
>>>> Using the mapping file, the user can configure 2nd level caches for each
>>>> mapped domain object, with varying configuration options. When used,
>>>> Castor JDO internally will use those caches when e.g. loading objects
>>>> from the persistence store. This way, once an object has been loaded
>>>> into a cache, no SQL statements will be issued anymore against the
>>>> persistence store.
>>>>
>>>> And now the last one: for detachment (JPA term) you need to associate
>>>> timestamp information with the objects being detached. In other words,
>>>> if you detach a domain object from the currently running transaction,
>>>> Castor will load it from the persistence store and attach the timestamp
>>>> of the load operation to it. At the same time, the detached object is
>>>> put into the 2nd level cache.
>>>>
>>>> Upon re-attaching the detached obejct, amongst other things, the
>>>> timestamps are being compared to see whether the object has been updated
>>>> during the detachment period. In other words, you need a cache for
>>>> detachment to work. Internally, Castor JDO uses the 2nd level cache for
>>>> this, which in my opinion is not ideal and should be refactored.
>>>>   
>>>>       
>>> Since 1.3 it is possible to persist the timestamp of an object which
>>> allows to work with detached objects without any cache. In other words,
>>> if you persist timestamps detachment works without cache, if timestamp
>>> is not persisted object has to stay in 2nd level cache between detaching
>>> and reataching it.
>>>     
>>>> Does this address all we talked about ?
>>>>
>>>> Werner
>>>>
>>>> Lukas Lang wrote:
>>>>   
>>>>       
>>>>> Hello Werner,
>>>>>
>>>>> I know, we discussed that last week in personal, but
>>>>> could you please again explain the different cache levels (1st, 2nd,
>>>>> update cache) of Castor to me?
>>>>>
>>>>> I'm writing to the dev list, because this might be interesting for
>>>>> others too.
>>>>>
>>>>> Thanks,
>>>>> Lukas
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe from this list, please visit:
>>>>>
>>>>>     http://xircles.codehaus.org/manage_email
>>>>>
>>>>>
>>>>>     
>>>>>         
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe from this list, please visit:
>>>>
>>>>     http://xircles.codehaus.org/manage_email
>>>>
>>>>
>>>>   
>>>>       
>>> -- 
>>>
>>> Syscon Ingenieurbüro für Meß- und Datentechnik GmbH
>>> Ralf Joachim
>>> Raiffeisenstraße 11
>>> 72127 Kusterdingen
>>> Germany
>>>
>>> Tel.   +49 7071 3690 52
>>> Mobil: +49 173 9630135
>>> Fax    +49 7071 3690 98
>>>
>>> Internet: www.syscon.eu
>>> E-Mail: ralf.joac...@syscon.eu
>>>
>>> Sitz der Gesellschaft: D-72127 Kusterdingen
>>> Registereintrag: Amtsgericht Stuttgart, HRB 382295
>>> Geschäftsleitung: Jens Joachim, Ralf Joachim
>>>
>>> --------------------------------------------------------------------- To
>>> unsubscribe from this list, please visit:
>>> http://xircles.codehaus.org/manage_email
>>>     
>>
>> ---------------------------------------------------------------------
>> To unsubscribe from this list, please visit:
>>
>>     http://xircles.codehaus.org/manage_email
>>
>>
>>   
> 
> -- 
> 
> Syscon Ingenieurbüro für Meß- und Datentechnik GmbH
> Ralf Joachim
> Raiffeisenstraße 11
> 72127 Kusterdingen
> Germany
> 
> Tel.   +49 7071 3690 52
> Mobil: +49 173 9630135
> Fax    +49 7071 3690 98
> 
> Internet: www.syscon.eu
> E-Mail: ralf.joac...@syscon.eu
> 
> Sitz der Gesellschaft: D-72127 Kusterdingen
> Registereintrag: Amtsgericht Stuttgart, HRB 382295
> Geschäftsleitung: Jens Joachim, Ralf Joachim
> 
> --------------------------------------------------------------------- To
> unsubscribe from this list, please visit:
> http://xircles.codehaus.org/manage_email

---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email


Reply via email to