Interdependency of Enhancement, Detachment and Merge on detachment settings 
should be coherently captured
---------------------------------------------------------------------------------------------------------

                 Key: OPENJPA-246
                 URL: https://issues.apache.org/jira/browse/OPENJPA-246
             Project: OpenJPA
          Issue Type: Improvement
          Components: docs
            Reporter: Pinaki Poddar


In OpenJPA, there is significant interplay between enhancement, detachment and 
merge operations to support a wide variety of use cases. 
Given that detach-modify-merge is a significant use case for multi-tier web 
applications built on OpenJPA, a comprehensive section that brings together how 
OpenJPA supports these wide variety of use cases with different detachment 
settings can be useful addition to the documentation.

As JPA specification does not yet explicitly (i.e. via API) support detachment, 
these features are often OpenJPA extensions and hence such elaboration gains 
more usefulness. 
The current documentation does describe the configuration and semantics in 
sufficient details but such descriptions are distributed across different 
sections. The users often have to connect the dots for their specific use 
cases. 

The section should bring together following aspects : 
     a) when entities are detached and how it is controlled (e.g. AutoDetach)
     b) what fields are detached (e.g. DetachState loaded/fetchgroups/all)
     c) what extra fields are added by the enhancer and how enhanced code 
differs based on configuration/annotation (e.g. @DetachState(enabled=true/false)
     d) how serialization compatibility is influenced by enhancement (e.g. 
whether client having access to openjpa librariers can determine whether a 
DetachStateManager can be associated with a detached instance)
     e) how the detached entity behaves (DetachStateManager) when detached 
(e.g. AccessUnloaded)
     f) how merge() determines whether an instance is detached or brand new 
(e.g. treatement of version field or a new instance with preassigned identity)  
     g) performance impact on merge operation of differnt configuration choices
  

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to