Janne,

I don't see any contradictions here. Synchronize instance state with the
persistent storage doesn't mean writting every field back to the
database. The text you quote from Table 6 is just a label. I wouldn't
read much into these few words.

So the anwser is c) The container is responsible for making sure the
bean is in sync with the persistent store as modified by the various
commit options. Synchronize would imply that not all fields are written
to the database and under commit option C all fields should probably be
checked for concurrent modifications.

--Victor


Janne Mattila wrote:


Some confusion about the EJB specification:

EJB 2.1 specification, 10.5.10, "commit options" states that "container
synchronizes the instance's state with the persistent storage at
transaction commit for all three (commit) options". Table 6 states this
even more explicitly, having "Yes" at "Write instance state to database"
for all commit options. Reading this, I would assume that the specification
requires CMP engine to write each bean back to database at commit time, no
matter what.

This in contradiction with my experiences with WebLogic. WebLogic 6.1
"...Server CMP implementation automatically detects modifications of CMP
fields and writes only those changes to the underlying datastore.". This
seems logical, as writing CMP fields back when they have not been changed
would not be efficient.

Does anyone have an idea on what is really going on here:

a) the intent of specification indeed requires that all fields be written
back to db at commit, but WebLogic has chosen not to follow the
specification to ensure better performance
b) specification is written a bit badly, and in fact it requires that
ejbStore() be called at commit time - and WebLogic follows that
specification properly
c) something else?

===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff EJB-INTEREST".  For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".



=========================================================================== To unsubscribe, send email to [EMAIL PROTECTED] and include in the body of the message "signoff EJB-INTEREST". For general help, send email to [EMAIL PROTECTED] and include in the body of the message "help".

Reply via email to